Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 393673 (x32)

Summary: [TRACKER] x32 porting issues
Product: Gentoo Linux Reporter: SpanKY <vapier>
Component: ProfilesAssignee: Gentoo Toolchain Maintainers <toolchain>
Status: CONFIRMED ---    
Severity: normal CC: alexanderyt, andreis.vinogradovs, ansla80, bertrand, bugzilla-gentoo, cjand8rs, dschridde+gentoobugs, eandry, egorov_egor, funtoos, kripton, maggu2810, nikoli, pageexec, pastas4, richardfisher, sam, steev, stephen.thomas, steve, tdalman, the.dmol, theonetruecamper, thican, xarthisius
Priority: Normal Keywords: Tracker
Version: unspecified   
Hardware: All   
OS: Linux   
URL: https://sites.google.com/site/x32abi/
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 420241, 421841, 423591, 466226, 467118, 467122, 472388, 499336, 506600, 555598, 571228, 600362, 600364, 637018, 642284, 663498, 663500, 664058, 722672, 728058, 760405, 925104, 925115, 926093, 319523, 394175, 394177, 394179, 394181, 395363, 395641, 413927, 413939, 419851, 419911, 419927, 419997, 420239, 420267, 420629, 420705, 420707, 420715, 420951, 421009, 421655, 421817, 421829, 421845, 421851, 423023, 423649, 423811, 423815, 423967, 425770, 425840, 425842, 426248, 426334, 426388, 426936, 427004, 427042, 427048, 427052, 427726, 434284, 435834, 435838, 436164, 436274, 437062, 437064, 437394, 438752, 439558, 442910, 442986, 446744, 452482, 452484, 454504, 459672, 461960, 462246, 462350, 466220, 466224, 466492, 466840, 467154, 470932, 472288, 480238, 498784, 499338, 506594, 506602, 507678, 508502, 509460, 509976, 510890, 512382, 512646, 512762, 512882, 512884, 514486, 516746, 517028, 518942, 542612, 542618, 542620, 542622, 547612, 549222, 552702, 553748, 555602, 557328, 563650, 566574, 570790, 570792, 574982, 574984, 575450, 575458, 575508, 575586, 575588, 576032, 576036, 583240, 589978, 590044, 590058, 591550, 595976, 617946, 618040, 618084, 618370, 623882, 627734, 627898, 654754, 664016, 842624, 843587, 908599, 925103, 926094, 927826    
Bug Blocks:    

Description SpanKY gentoo-dev 2011-12-08 21:32:43 UTC
this is a tracker for all such fun issues related to the new x32 ABI.  no reports should be here, just blocking bugs.

most packages should "just work" when compiled for x32, but i imagine we'll hit some that have certain assumptions either in the C code (like sizeof(unsigned long) == sizeof(time_t)), or the C/asm code (like __x64_64__ is always sizeof(void*) == 8).

see $URL for porting tips and possible patches by other projects
Comment 1 devsk 2012-07-17 05:13:53 UTC
Quick question: Will I be able to run 32-bit prebuilt binaries without having to install emul packages? As far as I can understand this stuff, this won't work. So, what's the point? It will be so darn difficult to get necessary-evil pre-built binaries like skype, nvidia-drivers, adobe flash etc. Now, we will have to beg them to port their applications to a third ABI? 64-bit took ages for them...:(
Comment 2 SpanKY gentoo-dev 2012-07-18 11:51:57 UTC
the x86 abi ("32-bit") will behave the same -- you need the emul packages.  otherwise, this isn't the location to debit the merits of x32.
Comment 3 piotr5 2012-12-27 03:44:04 UTC
not sure it belongs here, but https://bugs.gentoo.org/show_bug.cgi?id=447408 didn't show up when building with amd64 abi, only with x32. to some it might be a show-stopper just like all of the above. btw, I found another problem, with compiling ffmpeg, something about -fPIC missing.
Comment 4 SpanKY gentoo-dev 2012-12-27 04:25:35 UTC
(In reply to comment #3)

it is not.  keep comments specific to a bug on the respective bug.
Comment 5 Steven Newbury 2022-05-04 12:21:29 UTC
Just converted my internet gateway machine to Gentoo X32, as well as adding x32 multilib to my main PC, I'm surprised how few problems I've encountered.

I've just modified the rust eclass/ebuild to be able to bootstrap x32 from the amd64 dev-lang/rust-bin.  Works really well with system-llvm (llvm14).  Much lower memory usage from rustc and a good bit faster on my old PhenomII.

I'll create a new bug for it.
Comment 6 Steven Newbury 2022-05-04 12:53:16 UTC
I know it's really late to suggest this, but why not have x32 abi enabled for the toolchain with the default amd64 profile?  It would make porting/bug fixing much easier, and would probably get more people involved.  All the infrastructure is already in place and working via abi_x86_32 multilib support.

As I mentioned above, I have added this to my existing installation, and it works fine, but it's far from an easy process to add it after the fact.
Comment 7 Mike Gilbert gentoo-dev 2022-05-04 16:30:54 UTC
(In reply to Steven Newbury from comment #6)
> I know it's really late to suggest this, but why not have x32 abi enabled
> for the toolchain with the default amd64 profile?

The downside is increased build times and install size for glibc and gcc.

Also, existing installs would need to take special action to enable x32: users would need to enable sys-libs/glibc[multilib-boostrap] temporarily.