При обновлении не собирается cmake по зависимости libuv

При обновлении мира падает в ошибку компиляция cmake.
Требует версию libuv выше 1.2.28, хотя в системе установлена версия 1.44.
#equery --quiet list libuv
dev-libs/libuv-1.44.2-r1

Вопрос: как это решить? Читал на багзилле решения, честно не понял что надо сделать.

Ошибка:
-- Found JsonCpp: /usr/lib64/libjsoncpp.so (found suitable version "1.9.5", minimum required is "1.4.1")
-- Could NOT find LibUV: Found unsuitable version "1.20.0", but required is at least "1.28.0" (found /usr/lib64/libuv.so)
CMake Error at CMakeLists.txt:676 (message):
CMAKE_USE_SYSTEM_LIBUV is ON but a libuv is not found!
Call Stack (most recent call first):
CMakeLists.txt:807 (CMAKE_BUILD_UTILITIES)

Логи сборки cmake:
output - http://dpaste.com/HECPWPNK4
error - http://dpaste.com/GC63YPDZ8

Вывод emerge --info:
http://dpaste.com/5XPNSQJVG

CMAKE_USE_SYSTEM_LIBUV is ON

CMAKE_USE_SYSTEM_LIBUV is ON but a libuv is not found!
libuv включен в системе, но не найде?! Странно и правда.
Рискну преложить поискать именно то, что просит компилятор: 1.28.0.

My website: http://comb.org.ru

С ноября 2022 нетбук HP mini (Processor: Atom n570)

Плохой совет

@setavr, Я вижу, что ты недавно обновил glibc, и рискну предположить, что другие зависимые библиотеки/пакеты, которые явно не обновились, не были перекомпилированы, в том числе и libuv...
Поэтому предлагаю обновление с принудительным обновлением, включая зависимости:

emerge -1DNU --with-bdeps=y --changed-deps=y --verbose-conflicts --backtrack=40 libuv cmake -pv

Если будут проблемы - покажи выдачу команды выше.

Ошибка та же при компиляции

Ошибка та же при компиляции cmake.
При подсчете зависимостей проблем, конфликтов и блокировок нет.

"
-- Could NOT find LibUV: Found unsuitable version "1.20.0", but required is at least "1.28.0" (found /usr/lib64/libuv.so)
CMake Error at CMakeLists.txt:676 (message):
CMAKE_USE_SYSTEM_LIBUV is ON but a libuv is not found!
Call Stack (most recent call first):
CMakeLists.txt:807 (CMAKE_BUILD_UTILITIES)

-- Configuring incomplete, errors occurred!
See also "/var/tmp/portage/dev-util/cmake-3.24.3/work/cmake-3.24.3_build/CMakeFiles/CMakeOutput.log".
See also "/var/tmp/portage/dev-util/cmake-3.24.3/work/cmake-3.24.3_build/CMakeFiles/CMakeError.log".
* ERROR: dev-util/cmake-3.24.3::gentoo failed (configure phase):
* cmake failed
*
* Call stack:
* ebuild.sh, line 122: Called src_configure
* environment, line 2499: Called cmake_src_configure
* environment, line 1196: Called die
* The specific snippet of code:
* "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed";
"

вывод emerge --info
http://0x0.st/o02e.22.txt

вывод emerge -1DNU --with-bdeps=y --changed-deps=y --verbose-conflicts --backtrack=40 libuv cmake -pv
http://0x0.st/o02Q.txt
Оставшиеся пакеты тянет за собой cmake.

Ну так и отлично!

setavr написал(а):
вывод emerge -1DNU --with-bdeps=y --changed-deps=y --verbose-conflicts --backtrack=40 libuv cmake -pv
http://0x0.st/o02Q.txt
Оставшиеся пакеты тянет за собой cmake.

Ну так и отлично, а теперь убери -pv и выполни! :)

Очень странное "обновление".

Часть обновляемых пакетов была собрана с cmake. Сам же cmake - новый, в системе его нет. Как так получилось?

P.S. Впрочем, это не так уж и интересно. Система явно порушена вручную и злонамеренно. При вивисекции зависимости пакетов не учитывались.
Сначала нужно добиться выполнения emerge -qe @system. И только после этого обновляться.

cmake я вынес сам, пытаясь

cmake я вынес сам, пытаясь разрулить ошибку обновления

То есть, видимо, еще надо

То есть, видимо, еще надо заглянуть в пользовательскую кастомизацию (package.use/custom, package.accept.keywords и т.д.)?! Чтобы понять, в какие "шахматы играл автор" с системой.

My website: http://comb.org.ru

С ноября 2022 нетбук HP mini (Processor: Atom n570)

emerge -qe @system Компиляция

emerge -qe @system
Компиляция остановилась опять на cmake. В переборку попало 476 пакетов, остановилась на 363,
далее emerge --resume --skipfirst и компиляция оставшихся. Пока жду завершения.

packadge.use
http://0x0.st/o0WU.use

portage/package.accept_keywords
http://0x0.st/o0WD.accept_k

setavr написал(а): ...

setavr написал(а):
... попало 476 пакетов ...

Это вполне нормально. Ибо неизвестно, чего там еще не хватает. Пусть хоть в system все будет стройно, хоть обновится можно будет. Если соберется.

Проверил, cmake без самого себя собирается, если все остальное будет, должно восстановиться.

А вот то, что package.use, как и package.accept_keywords, автоматически заполняется, на мой взгляд, очень плохо. Потому что фиксируются, например, флаги для целевых python, а их бы оставить на усмотрение профиля и зависимостей. Да и вообще все прибивается гвоздями и дальнейшему контролю не подлежит.

Компиляция завершилась. Все

Компиляция завершилась. Все что не собралось:
http://0x0.st/o0JA.txt

Что делать дальше?

Компиляция завершилась.

setavr написал(а):
Компиляция завершилась. Все что не собралось:
http://0x0.st/o0JA.txt

Собралось все, кроме cmake и cmake-зависимых. Наверно, стоило обратить внимание, почему cmake не собрался. Наверно, из-за libuv, который пересобрался во второй части сборки. В любом случае, выяснить версию собранной libuv, из-за которой валилась сборка cmake, не лишне. И если снова собралась не та версия, которая нужна, то почему не собралась нужная - это и будет намек на источник проблем.

setavr написал(а):
Что делать дальше?

Без понятия, что тебе нужно. :-D
Собирай cmake, что ли? Или пойди, погуляй уже, сколько можно тупо из интернета всякую херню перепечатывать. :)

//------------

О вечном.

Автозаполнение accept_keywords и use для packages (как и включение произвольных промежуточных зависимостей в world, например), с каждой сборкой отдаляет мир от профиля, уводя на дорогу оригинальности и самобытности. Той же дорожкой идут и зависимости, их неудовлетворенности, и прочие косяки. Соответственно, с этим будет разбираться тот, на чьей совести лежит установка флага упомянутого автозаполнения.

Gentoo обеспечивает огромное количество таких дорог, тропинок и автострад. Каждый на своей. Причем, с какого-то времени, на чужую становится наплевать (ведь число их, см. выше, огромно).

Это же касается и ручной правки профиля с помощью таких файлов для своих оригинальных нужд. Но исправляя ручками, рут делает самостоятельный выбор и процедура подчеркивает его ответственноть за каждую правку. Выражение "оно само, я ничего не делал" становится явно нелогичным даже для особ, одаренных альтернативным сознанием, скажем, средней тяжести.

Уйдя в дремучий тропический лес (или стерильную арктическую пустыню) своих представлений о системе, бесполезно звать на помощь. Из чащи и тупика выдираться придется пересборкой мира со stage3 после предварительной кардинальной прочистки world.

Пойду подышу...

Пойду подышу...

Вот тут ты прав!

Бездумная автокорректировка конфигурации портажа - это ССЗБ, мина замедленного действия... не знаешь когда и как рванёт.

Умный учится на ошибках

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

Можно топик закрывать.

setavr написал(а):Умный

setavr написал(а):
Умный учится на ошибках других, остальные на своих.
В общем, все решилось откатом и перекомпиляцией.
Всем спасибо за наставление на путь истинный.

Можно топик закрывать.

Извини, но в чем ошибка-то была? Откат - куда откат, перекомпиляцией чего? Почему cmake-то не собирался?

Сборка новой версии libuv не

Сборка новой версии libuv не заменяла версию ранее установленной библиотеки. Как и почему - объяснить не могу. А cmake требовал версию библиотеки, которой в системе не нет и из-за этого не собирался.
Ошибка - я наворотил с зависимостями, не прочитал вывод портажа, сломал профиль...
Откатился на образ годовой давности, подрезал до минимума USE флаги и все пересобрал @system & @world, без ошибок, при чем проверил профиль - в нем все в норме.

Спасибо.

Спасибо, все понятно.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".