Я столкнулся с той же проблемой всего несколько дней назад. У меня нет точного способа сделать это, но вот общий способ:
Сначала взгляните на /var/lib/portage/world
. Сделайте резервную копию и разархивируйте пакеты до тех, которые нужны вашей системе для загрузки. Вот некоторые материалы, которые помогут вам начать работу:
app-admin/syslog-ng net-firewall/iptables net-misc/dhcpcd sys-apps/pciutils sys-apps/slocate sys-apps/usbutils sys-boot/grub sys-kernel/gentoo-sources sys-power/acpid sys-process/vixie-cron virtual/inetd
Все остальное будет обновлено позже.
Самая важная часть заключается в получении portage и python для последних версий, поэтому давайте сосредоточимся на этом.
Покажи свой portage dir:
emerge --sync
или же:
emerge-webrsync
Установите действительный профиль
eselect profile list eselect profile set <x>
Обновите python / portage шаг за шагом.
Посмотрите на вашу текущую установленную версию Portage. Обновите portage до следующей версии выше текущей (даже если она замаскирована на ~ x86), затем сделайте то же самое для python. После обновления Python обязательно запустите
python-updater
.Делайте это шаг за шагом, пока Python / Portage не будут обновлены. (Вы можете пропустить некоторые незначительные обновления версий. Вы сами увидите, какие версии приводят к ошибкам компиляции, а какие - нет.)
Как только они заработают, попробуйте установить другие пакеты, которые могут помочь вам в вашей задаче.
app-portage/ufed app-portage/autounmask app-portage/gentoolkit
Как только Python / portage обновится, вы сможете восстановить файл старого мира и обновить систему.
emerge -pvauDN world
Вам может понадобиться позвонить:
emerge ... emerge --depclean revdep-rebuild
несколько раз в процессе сборки.