View previous topic :: View next topic |
Author |
Message |
matulik n00b
Joined: 14 Nov 2010 Posts: 19
|
Posted: Thu Apr 23, 2015 2:37 pm Post subject: Przejście na multilib |
|
|
Przez około miesiąca nie używałem swojego prywatnego komputera, aż do przedwczoraj. Pierwsze co mi przyszło na myśl to zrobić aktualizacje. Oczywiście, wyświetliła mi się znana nam informacja
Quote: |
2015-03-28-true-multilib
Title True multilib support on amd64
Author Michał Górny <mgorny@gentoo.org>
Posted 2015-03-28
Revision 1
Starting on 2015-03-29, we are enabling true multilib support on amd64
and masking the old emul-linux-x86 package sets for removal. This
change provides our users with the opportunity to build 32-bit libraries
from source with all the flexibility given by ebuilds and the security
of using mainline ebuilds, rather than relying on pre-packaged binary
versions of them.
The switch to the new system is likely to require a specific action from
the users of our multilib profiles. Since the new system collides with
the old one, the Package Manager must be able to clearly satisfy all
the dependencies using the new system in order to proceed. This may
require unmerging packages installed from third-party repositories that
have not been updated to support the new system.
In order to enable building necessary 32-bit libraries, users will be
required to enable the abi_x86_32 USE flag on respective packages.
This can be done using /etc/portage/package.use entries alike
the following:
sys-libs/zlib abi_x86_32
In most of the cases, Portage will be able to deliver correct
suggestions for that when using the --autounmask feature. However, some
users may prefer setting ABI_X86 globally to enable 32-bit libraries
in all packages that support building them. This can be done using
the following package.use entry:
*/* abi_x86_32
In case of issues, blockers especially, users are recommended
to manually uninstall any emul-linux-x86 packages that may have been
installed on their systems. This will aid the Package Manager
in choosing the correct dependency resolution path. If using Portage,
this can be done using the following command:
$ emerge -C 'app-emulation/emul-linux-x86*'
Note: 32-bit applications may be temporarily broken after this step.
Therefore, it should be followed by a @world upgrade immediately.
|
Dodałem */* abi_x86_32 do package.use. Dodatkowo w make.conf dodałem ABI_X86="32 64".
Wykonałem polecenie usunięcia wszystkich emul-linux-x86*, po czym chciałem dokonał aktualizacji. Niestety - dostałem masę zablokowanych pakietów które blokują siebie nawzajem. Lista nie mieści się w standardowej ilości linii terminala.
Próbowałem również Code: | emerge @preserved-rebuild --autounmask-keep-masks | jednak bez skutku.
Lista pakietów, początek emerge (przekazane do pliku): http://wklej.to/aLR2p
Tyle, co mieści mi się w konsolu: http://wklej.to/XSxYZ
Ktoś jest w stanie mi pomóc? |
|
Back to top |
|
|
phd n00b
Joined: 12 Oct 2005 Posts: 68 Location: Warszawa (Poland)
|
Posted: Sat Apr 25, 2015 6:27 am Post subject: |
|
|
Przekieruj wyjście do pliku
emerge ... @world > komunikaty.txt
wtedy będziesz miał przynajmniej wszystkie komunikaty z konsoli.
Ja nie dodawałem */* abi_x86_32, zrobiłem natomiast coś zupełnie odwrotnego. Wkleiłem komunikaty.txt do portage.use i usunąłem z niego wszystkie śmieciowe komentarze zostawiając jedynie nazwy wymaganych pakietów. Przy okazji, zamieniłem wszystkie znaki >= na =. Dzięki temu, przy każdej aktualizacji, najpierw wykonywana jest próba aktualizacji pakietu bez opcji abi_x86_32. Jeśli to nie przejdzie, wtedy dopiero zamieniam numer jego wersji w portage.use na tę zaktualizowaną w drzewie portage. Trochę to pracochłonne, ale potem nie ma tych pakietów aż tak dużo, a i portage nie gubi się w aktualizacji, bo nie ciągnie już za sobą tych wszystkich zbędnych zależności od multilib dla wszystkich pakietów. |
|
Back to top |
|
|
matulik n00b
Joined: 14 Nov 2010 Posts: 19
|
Posted: Mon Apr 27, 2015 4:05 pm Post subject: |
|
|
Po próbie wykonania tego, co doradził mi kolega phd, dostaję taki wysyp:
http://wklej.to/ewdPH
Teraz to już nie wiem w jaki sposób próbować doprowadzić system do porządku. |
|
Back to top |
|
|
phd n00b
Joined: 12 Oct 2005 Posts: 68 Location: Warszawa (Poland)
|
Posted: Mon Apr 27, 2015 6:42 pm Post subject: |
|
|
@matulik Przejrzałem zamieszczony plik i przeedytowałem go do wklejenia do package.use, oto on po edytcji
Quote: | =dev-qt/qttest-4.8.5:4 abi_x86_32
=media-libs/fontconfig-2.11.1.r2 abi_x86_32
=dev-qt/qtsvg-4.8.5 abi_x86_32
=dev-libs/libgpg-error-1.13 abi_x86_32
=x11-libs/libSM-1.2.2-r1 abi_x86_32
=x11-base/xorg-server-1.16.4 abi_x86_32
=x11-libs/libXinerama-1.1.3 abi_x86_32
=dev-libs/libpthread-stubs-0.3-r1 abi_x86_32
=dev-libs/glib-2.42.2 abi_x86_32
=x11-proto/xproto-7.0.27 abi_x86_32
=dev-qt/designer-4.8.5 abi_x86_32
=dev-libs/expat-2.1.0-r4 abi_x86_32
=media-libs/tiff-4.0.3-r6 abi_x86_32
=x11-libs/libXdmcp-1.1.1-r1 abi_x86_32
=dev-libs/libgcrypt-1.5.4-r1 abi_x86_32
=dev-libs/libxml2-2.9.2-r1 abi_x86_32
=x11-libs/libxcb-1.11-r1 abi_x86_32
=x11-proto/fixesproto-5.0-r1 abi_x86_32
|
Niewiele z tego zostało. Wszystko co było w nawiasach ( ) i zahaszowane to ,,zbędne śmieci" informujące szczegółowo o zależnościach, które usunąłem. Dla każdego z tych pakietów sprawdziłem dodatkowo na stronie https://packages.gentoo.org/arch/amd64/stable , które wersje na dzisiaj są stabilne dla amd64 (i również x86) i wybrałem najnowszą, która spełniała taki warunek. Może się zdarzyć, że któryś z innych zależnych pakietów wymaga innej wersji lub masz zainstalowane starsze drzewo (emerge --sync).
Po wklejeniu do package.use w/w listy pakietów zapewne portage, po sprawdzeniu zależności, znajdzie coś jeszcze, pewnie jeszcze drugie tyle. Nie wiem, czy wstawienie ABI_X86="32 64" do make.conf to dobry pomysł. Nie znam się na tym, nie wiem jak to działa i czy nie powoduje dodatkowych kłopotów. Ja nie mam takiej opcji w moim make.conf. |
|
Back to top |
|
|
Jacekalex Guru
Joined: 17 Sep 2009 Posts: 554
|
Posted: Wed May 20, 2015 10:34 am Post subject: |
|
|
Ja mam:
Code: | grep ABI /etc/portage/make.conf
ABI_X86="64 32" |
Code: | grep abi /etc/portage/profile/use.mask
-abi_x86_32
-abi_x86_64 |
Takie wpisy do konfigach dodałem w zeszłym roku, na początku było trochę jazdy z emul_linux_x86*, ale teraz już jest spokój.
SOA#1
Pozdro
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|