Обновление системы. Ошибка на llvm-core/libclc-19.1.4

У вас тоже пишет, что неизвестно значение.
Что-то может переменилось

В Генте по умолчанию оно не установлено. В Кальке /var/db/repos/calculate/profiles/default/make.defaults прописывает FEATURES=“getbinpkg parallel-install -news -userpriv -pkgdir-index-trusted” (включает для всех по умолчанию) а в /etc/portage/make.conf/custom пишет (не требует) что отключить можно так.

Не знаю когда это начало появляться, не отслеживал специально - работает и компилит

ПыСы: у вас то хоть компилит или выбрасывает?

У меня компиляция начинается. Мне немного неясно то, что в консоль пишется что неизвестное значение, и я почему-то думаю это значит, что данная команда не сработала и компиляция продолжается в штатном режиме без внесения изменений в ход компилирования.

И сам пакет llvm-core/llvm:18 он собирается. Точнее пересобирается. Но этот пакет у меня ошибок и не вызывал при обновлении.

Т.е. я думаю, что я компилирую, не то, что взаимосвязано с llvm-core/libclc-19 которая собирается с ошибкой

Надеюсь ничего страшного, я тоже думал что даю дельные советы

а оказалось - не полностью прочитал логи. вроде сам же просил…

Вот это работает если оно прописано в make.conf

Я прописал cl-update и мне было предложено скачать ещё несколько новых пакетов.
Пока, что я убрал эту запись из make.conf т.к. я так понимаю, оно не оказывает влияния на пакет llvm-core/libclc-19.

Вы ещё предлагали установить нестабильную версию.
Попробую установить нестабильную.

Спустя время:

Почему-то размаскировка нестабильной версии не дала никакого эффекта.
Всё равно устанавливается стабильная версия 19.1.4 вместо нестабильной 19.1.17

Ещё выяснилось, что llvm-core/libclc-19.1.4 у меня ставиться с ebuild’a, а не из бинарника

Спустя ещё некоторое время:

Ну в общем и целом системе нужно обновить так или иначе этот llvm-core/libclc, даже его маскировка не помогает системе отказаться от его обновления. При его сборке во время обновления возникает ошибка.

Попробовал его замаскировать вот так:

В /etc/portage/package.mask/custom добавил >=llvm-core/libclc-15.0.7

Тогда обновление завершается вот так:

cl-update
Синхронизация репозиториев

  • Проверка текущего сервера обновлений … [ ok ]
  • Проверка обновлений Distros … [ ok ]
  • Проверка обновлений Calculate … [ ok ]
  • Проверка обновлений Gentoo … [ ok ]
  • Синхронизация завершена
    Конфигурация системы
  • Сервер обновлений Index of /calculate
    Обновление пакетов
  • Вычисление зависимостей … [ ok ]
    [ebuild N #] llvm-core/libclc-19.1.4::gentoo USE=“spirv -verify-sig” LLVM_SLOT=“18 -17” VIDEO_CARDS=“-nvidia -r600 -radeonsi” 0 KiB
  • 1 пакетов будет установлено, 0 KiB будет загружено
    The following mask changes are necessary to proceed:
    (see “package.unmask” in the portage(5) man page for more details)
    required by media-libs/mesa-24.2.6-r2::gentoo
    required by media-libs/gst-plugins-base-1.24.11::gentoo[gles2,opengl]
    required by gui-libs/gtk-4.14.4-r1::gentoo[gstreamer]
    required by dev-cpp/gtkmm-4.14.0::gentoo
    required by media-sound/pavucontrol-6.1::gentoo
    required by @selected
    required by @world (argument)
    /etc/portage/package.mask/custom:
    This file will be migrate to new installation
    =llvm-core/libclc-19.1.4

NOTE: The --autounmask-keep-masks option will prevent emerge
from creating package.unmask or ** keyword changes.

  • Выполнение Emerge завершилось с ошибкой
  • Не удалось обновить

Видимо нужно искать какие-то различные способы установки этого пакета. Если есть какие-то предложения, то предложите что-то и я буду пробовать

Началась компиляция из исходников. Она хоть завершилась?

Это и есть вопрос зависимостей. ллвм’у либслс нафик не упал он и без него прекрасно себя чувствует. а вот для либслс (который нужен месе) ллвм нужен как воздух, так как он на нём написан.

Кажется для вас слова “программирование” и “сборка из исходников” звучат как из другой вселенной. новые - это сборочные зависимости.

ну я надеялся что вы будете это делать по аналогии с qt-6.8.2

А это было понятно с первого поста. я думал вы знаете что пишете.
и всё же скорее не ставится а вываливается с ошибкой компиляции/линковки.

Что мог уже предложил.

Наверное надо было emerge llvm-core/llvm:18 -pv
а дальше смотря по выхлопу

Я её остановил сам. Т.к. этот пакет нормально устанавливается

Да, я смог сообразит, что меса тянет за собой либслс, а она видимо за собой тянет ллвм.
Какой-то невероятный круг

Сборочные зависимости?

Да, при том, что непонятно как пересобрать правильно, чтобы как будто бы что бы всё собиралось в правильной последовательности.

Пока результат такой. При очередном обновлении cl-update потянул libclc-19.1.17 версии, и эта версия так же не собралась вот с такой ошибкой:

[186/188] : && /usr/bin/x86_64-pc-linux-gnu-g++ -O2 -march=native -pipe -Wl,–as-needed -Wl,–gc-sections CMakeFiles/prepare_builtins.dir/utils/prepare-builtins.cpp.o -o prepare_builtins -Wl,-rpath,“$ORIGIN/…/lib64:/usr/lib/llvm/19/lib64” /usr/lib/llvm/19/lib64/libLLVM.so.19.1 && :
FAILED: prepare_builtins
: && /usr/bin/x86_64-pc-linux-gnu-g++ -O2 -march=native -pipe -Wl,–as-needed -Wl,–gc-sections CMakeFiles/prepare_builtins.dir/utils/prepare-builtins.cpp.o -o prepare_builtins -Wl,-rpath,“$ORIGIN/…/lib64:/usr/lib/llvm/19/lib64” /usr/lib/llvm/19/lib64/libLLVM.so.19.1 && :
/usr/lib/gcc/x86_64-pc-linux-gnu/13/…/…/…/…/x86_64-pc-linux-gnu/bin/ld: /usr/lib/llvm/19/lib64/libLLVM.so.19.1: undefined reference to `__cxa_call_terminate@CXXABI_1.3.15’
collect2: error: ld returned 1 exit status

При том что llvm-core установился 19.1.7 версии

Уже? будем посмотреть. покажу как только так сразу…
(хорошо выходной выпал иначе не так сразу)

И сlang установился 19.1.7 версии

emerge -uDN @world -pv


и там ниже ещё
[ebuild U ] llvm-core/lld-19.1.7:19/19.1::gentoo [19.1.4:19/19.1::gentoo] USE=“zstd -debug -test -verify-sig” 0 KiB

видно что сперва компилится почти весь стек llvm/clang и только потом libclc

Omsk 2025-02-12 11:55
# emerge =llvm-core/llvm-19.1.7:19/19.1::gentoo =llvm-core/clang-19.1.7:19/19.1::gentoo =llvm-runtimes/compiler-rt-19.1.7:19::gentoo =llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo =llvm-core/clang-runtime-19.1.7:19::gentoo -O1b
Omsk 2025-02-12 13:55 - 2 часа - да компиляция занимает время

поехали дальше
# emerge =llvm-core/libclc-19.1.7::gentoo -O1b
libclc-19.tar.gz (157,1 КБ)

видно что доработали таки - с llvm-19 и компилится и линкуется на ура

далее в процессе - там kde-apps

Вот это запустил у себя. Собралось всё нормально.

Вот это не собралось с той же ошибкой.

emerge =llvm-core/libclc-19.1.7::gentoo -O1b

Спасибо за архив. Просмотрел лог сборки. Почему-то у меня не собирается

Собралось?
Плиз выхлоп
emerge =llvm-core/llvm-19.1.7:19/19.1::gentoo =llvm-core/clang-19.1.7:19/19.1::gentoo =llvm-runtimes/compiler-rt-19.1.7:19::gentoo =llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo =llvm-core/clang-runtime-19.1.7:19::gentoo -O1pv

emerge =llvm-core/llvm-19.1.7:19/19.1::gentoo =llvm-core/clang-19.1.7:19/19.1::gentoo =llvm-runtimes/compiler-rt-19.1.7:19::gentoo =llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo =llvm-core/clang-runtime-19.1.7:19::gentoo -O1pv

Local copy of remote index is up-to-date and will be used.

Local copy of remote index is up-to-date and will be used.

These are the packages that would be merged, in order:

[binary R ] llvm-core/llvm-19.1.7:19/19.1::gentoo USE=“binutils-plugin libffi zstd -debug -debuginfod -doc -exegesis -libedit -test -verify-sig -xml -z3” ABI_X86=“32 (64) (-x32)” LLVM_TARGETS=“(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (LoongArch) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE) (WebAssembly) (X86) (XCore) -ARC -CSKY -DirectX -M68k -SPIRV -Xtensa” 0 KiB
[binary R ] llvm-core/clang-19.1.7:19/19.1::gentoo USE=“extra (pie) static-analyzer -debug -doc (-ieee-long-double) -test -verify-sig -xml” ABI_X86=“32 (64) (-x32)” LLVM_TARGETS=“(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (LoongArch) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE) (WebAssembly) (X86) (XCore) -ARC -CSKY -DirectX -M68k -SPIRV -Xtensa” PYTHON_SINGLE_TARGET=“python3_12 -python3_10 -python3_11 -python3_13” 0 KiB
[binary R ] llvm-runtimes/compiler-rt-19.1.7:19::gentoo USE=“atomic-builtins (clang) -debug -test -verify-sig” ABI_X86=“32 (64)” 0 KiB
[binary R ] llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo USE=“asan cfi (clang) ctx-profile dfsan gwp-asan hwasan libfuzzer lsan memprof msan orc profile safestack scudo tsan ubsan xray -debug (-shadowcallstack) -test -verify-sig” ABI_X86=“32 (64)” 0 KiB
[binary R ] llvm-core/clang-runtime-19.1.7:19::gentoo USE=“compiler-rt openmp sanitize -libcxx -offload” ABI_X86=“32 (64) (-x32)” 0 KiB

Ну вот наконец то и ожидаемый ответ. Как и говорил - или их всех нужно компилять или подгонять libclc под бинарник флагами.

Если я сделаю вот так:

FEATURES=“-getbinpkg” emerge =llvm-core/llvm-19.1.7:19/19.1::gentoo =llvm-core/clang-19.1.7:19/19.1::gentoo =llvm-runtimes/compiler-rt-19.1.7:19::gentoo =llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo =llvm-core/clang-runtime-19.1.7:19::gentoo -O1pv

These are the packages that would be merged, in order:

[ebuild R ] llvm-core/llvm-19.1.7:19/19.1::gentoo USE=“binutils-plugin libffi zstd -debug -debuginfod -doc -exegesis -libedit -test -verify-sig -xml -z3” ABI_X86=“32 (64) (-x32)” LLVM_TARGETS=“(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (LoongArch) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE) (WebAssembly) (X86) (XCore) -ARC -CSKY -DirectX -M68k -SPIRV -Xtensa” 280 KiB
[ebuild R ] llvm-core/clang-19.1.7:19/19.1::gentoo USE=“extra (pie) static-analyzer -debug -doc (-ieee-long-double) -test -verify-sig -xml” ABI_X86=“32 (64) (-x32)” LLVM_TARGETS=“(AArch64) (AMDGPU) (ARM) (AVR) (BPF) (Hexagon) (Lanai) (LoongArch) (MSP430) (Mips) (NVPTX) (PowerPC) (RISCV) (Sparc) (SystemZ) (VE) (WebAssembly) (X86) (XCore) -ARC -CSKY -DirectX -M68k -SPIRV -Xtensa” PYTHON_SINGLE_TARGET=“python3_12 -python3_10 -python3_11 -python3_13” 0 KiB
[ebuild R ] llvm-runtimes/compiler-rt-19.1.7:19::gentoo USE=“atomic-builtins (clang) -debug -test -verify-sig” ABI_X86=“32 (64)” 0 KiB
[ebuild R ] llvm-runtimes/compiler-rt-sanitizers-19.1.7:19::gentoo USE=“asan cfi (clang) ctx-profile dfsan gwp-asan hwasan libfuzzer lsan memprof msan orc profile safestack scudo tsan ubsan xray -debug (-shadowcallstack) -test -verify-sig” ABI_X86=“32 (64)” 0 KiB
[ebuild R ] llvm-core/clang-runtime-19.1.7:19::gentoo USE=“compiler-rt openmp sanitize -libcxx -offload” ABI_X86=“32 (64) (-x32)” 0 KiB

Это будет что-то похожее на правильное действие?

С 10-11 поста ответ - Калька собирается не с юс-нэйтив, а для всех. А это уже разные процессорные инструкции.