View previous topic :: View next topic |
Author |
Message |
paulj Guru
Joined: 30 Sep 2004 Posts: 511 Location: Wales, UK
|
Posted: Sat Oct 12, 2013 7:46 am Post subject: Multilib, abi_x86_32 etc Documentation |
|
|
It appears that like me, many users have struggled in recent weeks with upgrading following the move to abi_32 compilation. Could I please press one of our hard working developers to give us a quick overview of the changes and how to manage them? As a starter, let me explain my findings and understanding so far, and feel free to correct me if I have misunderstood.
- The suite of files emul_linux_x86* will be obsolete once the whole of portage is changed over to the new structure
- A number of ebuilds have not been changed to use the new approach yet, or at least not in stable versions
- Neither a fully stable system , nor a fully unstable system has any problems. The challenge comes for systems like mine with a mixture of stable and unstable packages.
- In order to use the new approach, you need to unmask the abi_x86_32 flag in /etc/portage/profile/use.mask:
In addition, you need to add the flag abi_x86_32 for packages for which you want to compile the abi_32. Alternatively you can add the flag globally in /etc/portage/make.conf:
In actual fact, the 64 is not necessary here, as I have an AMD64 system which means abi_x86_64 is enabled by default.
In order to eliminate the mixed condition, you need to find dependencies on emul_linux* and see if any of the ebuilds have been modified to use the new flags. You can the upgrade those packages accordingly. In some cases, the existence of the multilib flag will optionally add a dependency. Unsetting the multilib flag will remove this.
I have to declare a lack of understanding of the technical background to abi_32 etc., so I welcome additions and corrections to this list. I would be happy to summarise and add a page to the wiki is that helps.
For my system, I am starting to question exactly why I have a multilib system, and whether I should move to a 64bit only system! (would it be quicker.....?) |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
|
Back to top |
|
|
steveL Watchman
Joined: 13 Sep 2006 Posts: 5153 Location: The Peanut Gallery
|
Posted: Tue Oct 15, 2013 2:07 am Post subject: Re: Multilib, abi_x86_32 etc Documentation |
|
|
paulj wrote: | It appears that like me, many users have struggled in recent weeks with upgrading following the move to abi_32 compilation. |
Indeed.
Quote: | I have to declare a lack of understanding of the technical background to abi_32 etc., so I welcome additions and corrections to this list. I would be happy to summarise and add a page to the wiki is that helps. |
Well, let me just say "thanks" then, as you've done an excellent job so far, and this does need to be documented with review.
Quote: | For my system, I am starting to question exactly why I have a multilib system, and whether I should move to a 64bit only system! |
I'd hang in there for a bit: this is a transitional phase, bumpy as it is.
If it goes on for more than another month or so, I'll be concerned, since it has been going on for a while now. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 8935
|
Posted: Tue Oct 15, 2013 10:53 am Post subject: |
|
|
I'm already running wine without emul-linux-* packages with a few additional ebuilds from FireBurn overlay, but it doesn't work with several dependencies and I had to create one intermediate -32bit ebuild with a tiny subset of yet-to-be-converted libs. I mostly did that to save a lot of unnecessary build time while packages are still depending on emul-linux-* that are becoming merely meta-ebuilds pulling in all the deps that were provided as binaries before.
The transition will certainly go on for a while as there are plenty dependencies involved. Affected people are ~arch users and those who are running mixed arch/~arch packages with probably long forgotten entries inside their package.keywords and package.unmask dirs, so that will be an opportunity to look into those. Nothing that a bit of (un)masking couldn't solve. |
|
Back to top |
|
|
paulj Guru
Joined: 30 Sep 2004 Posts: 511 Location: Wales, UK
|
Posted: Tue Oct 15, 2013 7:44 pm Post subject: |
|
|
I am not using wine here. If I need to access windows, I have an XP virtualbox installation set up. I am not sure which package exactly led me down the path of having to deal with this issue. I have a mixed system of arch/~arch, but when utilising an unstable package I normally mark the current unstable version as ~amd64, not any version of the package. This has recently become more difficult, as it now seems the approach is to remove the ebuild for an unstable version if a newer unstable version is added, and the original unstable package is not going to be made stable. This leads to emerge wanting to downgrade packages, which then causes more dependency issues especially around abi_32!
How I love Gentoo!
No seriously, the alternatives are too scary to contemplate!
edit - spelling mistake! |
|
Back to top |
|
|
Ant P. Watchman
Joined: 18 Apr 2009 Posts: 6920
|
Posted: Wed Oct 16, 2013 5:35 pm Post subject: |
|
|
I'm wondering, once the ABI-multilib stuff is stable will there be an easy upgrade path from the no-multilib profile? Would be nice to get rid of my 32bit chroot stuff... |
|
Back to top |
|
|
paulj Guru
Joined: 30 Sep 2004 Posts: 511 Location: Wales, UK
|
Posted: Wed Oct 16, 2013 6:04 pm Post subject: |
|
|
Hopefully at some point one of the developers will give us some more information. I am not sure about migration from no-multilib setup - I was going down the no-multilib path when setting my system up, but fell at the first hurdle (grub-legacy) |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Wed Oct 16, 2013 6:19 pm Post subject: |
|
|
paulj wrote: | I am not sure about migration from no-multilib setup |
I am afraid migration from no-multilib is almost impossible (or at least as hard as migration from 32 bit to 64 bit; you will have to build cross-compilers and what else...). Probably you will have to reinstall with a multilib profile if you want multilib. |
|
Back to top |
|
|
|