Решил пока жаркие деньки не наступили, перейти на новый профиль в системе.
В новом системном профиле 17.1 у системы gentoo была переработана функция multilib.
Переходим в системе Gentoo Linux профиль 17.1 с профиля 17.0.
Изначально профиль у меня был default/linux/amd64/17.0/no-multilib (stable)
Для начало, найдем новость о новом стабильном профиле 17.1
eselect news list | grep "17.1 profiles" [19] 2019-06-05 amd64 17.1 profiles are now stable
Прочитаем новость.
eselect news read 19
В новости есть структура последовательности действий по переходу.
Вот мои действия по переходу на новый профиль:
1 Обновляем текущую систему.
# emerge -auvDN world.
2 У моей системы изначальный профиль системы 17.0 и gcc 9.3.0, так что этот пункт мне не нужно делать.
3 Установим вспомогательный пакет по переходу на профиль 17.1.
# emerge -1v app-portage/unsymlink-lib
4 Запустим анализ действий, что эта утилита будет делать, смотрим есть ли ошибки
Будет видно, какие директории и библиотеки перенесутся в новую директорию.
# unsymlink-lib --analyze
5 Самое время сделать backup системы, на всякий пожарный.
6 Запускаем миграцию для профиля 17,1,
# unsymlink-lib --migrate
Будут перемещены директории и библиотеки, то что в 5 пункте показало.
После этого действия устанавливать пакеты пока нельзя.
[/lib32] & /lib -> /lib.new ... Remove extraneous files from /lib.new ... [/usr/lib32] & /usr/lib -> /usr/lib.new ... [/usr/local/lib32] & /usr/local/lib -> /usr/local/lib.new ... Updating: /lib -> lib.new ... Updating: /usr/lib -> lib.new ... Updating: /usr/local/lib -> lib.new ... Initial migration complete. Please now test whether your system works correctly. It might be a good idea to try rebooting it. Once tested, complete the migration and clean up backup files via calling: /usr/lib/python-exec/python3.7/unsymlink-lib --finish If you wish to revert the changes, run: /usr/lib/python-exec/python3.7/unsymlink-lib --rollback
7 Перезагрузим систему, проверяем как загрузится, есть ли ошибки в portage.
gcc-config -l emerge --info
Если есть ошибки, разбираем их, либо возвратить как было.
unsymlink-lib --rollback
8 Если все в порядке, то удаляем бэкапы директорий и библиотек созданные в 6 пункте.
unsymlink-lib --finish
Что типа этого увидите.
enaming /lib.new -> /lib ... Renaming /usr/lib.new -> /usr/lib ... Renaming /usr/local/lib.new -> /usr/local/lib ... Removing stale files from /lib64 ... Removing stale files from /usr/lib64 ... Removing stale files from /usr/local/lib64 ... Migration complete. Please switch to the new profiles, or add the following to your make.conf (or equivalent): SYMLINK_LIB=no Afterwards, please rebuild all installed GCC versions, e.g.: emerge -1v /usr/lib/gcc
9 Переходим на новый профиль 17.1.
eselect profile set 26
или
eselect profile set default/linux/amd64/17.1/no-multilib
Проверим какой профиль сейчас.
eselect profile show
или
eselect profile list | grep '*'
10 Осталось пересобрать gcc компилятор, это на долго, на моем 12 ядерном процессоре с 16 Гиг памяти и диском nvme заняло примерно 15-20 минут.
emerge -1v sys-devel/gcc
11-12 Так как я не использую multilib, то значит в моей системы нет 32 битных библиотек и значит эти два пункта мне выполнять не нужно.
Вот как бы и все, вся логика перехода в Gentoo Linux профиль 17.1, это со стороны сложно!