LINUX.ORG.RU

Ошибки при компиляции пакетов с использованием ninja

 , ,


0

1

Пытаюсь скомпилировать supercollider с флагом server и выскакивает такая ошибка:

[189/579] /usr/bin/x86_64-pc-linux-gnu-g++ -DBOOST_CHRONO_HEADER_ONLY -DBOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE -DBOOST_NO_AUTO_PTR -DDLOPEN -DLIB_SUFFIX=\"64\" -DNOVA_SIMD -DSC_DATA_DIR=\"/usr/share/SuperCollider\" -DSC_FFT_FFTW -DSC_PLUGIN_DIR=\"/usr/lib64/SuperCollider/plugins\" -DSC_PLUGIN_EXT=\".so\" -DSUPERNOVA -Icommon -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/nova-simd -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/nova-tt -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/include/plugin_interface -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/include/common -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/common -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/include/server -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/scsynth -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/boost_endian -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/boost_sync/include -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/supernova/. -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/oscpack_1_1_0 -I/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/external_libraries/TLSF-2.4.6/src  -march=skylake -O2 -pipe -DNDEBUG -msse -mfpmath=sse -msse2 -ftemplate-depth-4096   -fschedule-insns2 -fomit-frame-pointer -Wreturn-type -fno-math-errno -fno-signaling-nans -fsigned-zeros -fno-associative-math -pthread -fvisibility=hidden -std=gnu++14 -MD -MT server/supernova/CMakeFiles/libsupernova.dir/sc/sc_synthdef.cpp.o -MF server/supernova/CMakeFiles/libsupernova.dir/sc/sc_synthdef.cpp.o.d -o server/supernova/CMakeFiles/libsupernova.dir/sc/sc_synthdef.cpp.o -c /var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/supernova/sc/sc_synthdef.cpp
ninja: build stopped: subcommand failed.
 * ERROR: media-sound/supercollider-3.11.2::gentoo failed (compile phase):
 *   ninja -v -j8 -l0 failed
 * 
 * Call stack:
 *     ebuild.sh, line  127:  Called src_compile
 *   environment, line 2140:  Called cmake_src_compile
 *   environment, line  839:  Called cmake_build
 *   environment, line  808:  Called eninja
 *   environment, line 1260:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 * 
 * If you need support, post the output of `emerge --info '=media-sound/supercollider-3.11.2::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/supercollider-3.11.2::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/supercollider-3.11.2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/supercollider-3.11.2/temp/environment'.
 * Working directory: '/var/tmp/portage/media-sound/supercollider-3.11.2/work/supercollider-3.11.2_build'
 * S: '/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source'

>>> Failed to emerge media-sound/supercollider-3.11.2, Log file:

>>>  '/var/tmp/portage/media-sound/supercollider-3.11.2/temp/build.log'

Вообще, ошибки такого типа у меня часто возникают в последнее время, поэтому хотелось бы понять в чём проблема.


ninja -v -j8

У тебя может компилироваться одновременно до 8 файлов. Ошибка может быть на на 8 команд выше (точнее 7):

[189/579]

В приведенном куске лога нет ошибок, приведших остановке ninja.

anonymous ()
Ответ на: комментарий от towe

ты телепатов ждешь? выкладывай лог дуде

MAKEOPTS="-j1" emerge --ignore-default-opts --jobs=1 --quiet-build=n media-sound/supercollider

прежде чем думать в чем дело

deity ★★★★ ()
Ответ на: комментарий от towe

MEKEOPTS="-j7"

Не надо сочинять и писать с ошибками сочинение. Я тебе конкретно показал «ninja -v -j8»

anonymous ()
Ответ на: комментарий от towe

Проблема по видимому тут:

In file included from /var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/supernova/sc/sc_osc_handler.cpp:36:
/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/supernova/sc/../server/server.hpp:118:49: error: expected class-name before ‘,’ token
  118 |                     public detail::audio_backend,
      |                                                 ^
/var/tmp/portage/media-sound/supercollider-3.11.2/work/SuperCollider-3.11.2-Source/server/supernova/sc/../server/server.hpp:127:21: error: ‘audio_backend’ in namespace ‘nova::detail’ does not name a type
  127 |     typedef detail::audio_backend audio_backend;
      |                     ^~~~~~~~~~~~~
X512 ★★★ ()
Последнее исправление: X512 (всего исправлений: 1)

Всем спасибо, собрал с jack флагом и всё заработало. Отдельное спасибо за разъяснения о том, что т. к. -j8, то ошибка может быть выше, чем в последней команде сборки, теперь стало яснее как решать подобные проблемы. Раньше мне это в голову не приходило.

towe ()
Ответ на: комментарий от towe

Всем спасибо, собрал с jack флагом и всё заработало.

По идее, по идее… Надо бы пожаловаться ебилдописателю оверлеедержателю, чтобы пакет требовал указать бекенд (USE=jack), если собирается с USE=server.

anonymous ()
Ответ на: комментарий от anonymous

Да, надо, но у меня нет сейчас на это времени(

towe ()
Ограничение на отправку комментариев: только для зарегистрированных пользователей