Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 199995 - cross-gcc always installs with USE=-openmp
Summary: cross-gcc always installs with USE=-openmp
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-22 17:04 UTC by zeuner
Modified: 2010-06-20 05:52 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build log for gettext (build.log,346.89 KB, text/plain)
2007-11-22 17:05 UTC, zeuner
Details
Authorize the cross compile of openmp in toolchain.eclass (toolchain_eclass-cross-openmp-fix.patch,353 bytes, patch)
2010-06-10 15:17 UTC, Quentin Casasnovas
Details | Diff
Authorize the openmp USE flag in crossdev. (crossdev-gcc-stage2-openmp-fix.patch,513 bytes, patch)
2010-06-10 15:18 UTC, Quentin Casasnovas
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description zeuner 2007-11-22 17:04:26 UTC
When creating a build environment for x86_64 on a i686 system using crossdev, the installed gcc seems to be broken. This can be seen when trying to install gettext, which checks for openmp support when configuring, and later fails compiling because the libgomp.spec file is missing from the installed gcc. I assume a bug in the gcc ebuild, but openmp could also be explicitly disabled in the gettext (and probably other) ebuild as a workaround. But currently I see no way of installing gettext in the cross development environment.

Reproducible: Always

Steps to Reproduce:
1. crossdev -t x86_64-pc-linux-gnu
2. Set up cross development environment (for example like this: https://quidecco.de/mediawiki/index.php/Converting_Gentoo_to_64-bit)
3. emerge gettext

Actual Results:  
...
x86_64-pc-linux-gnu-gcc: libgomp.spec: No such file or directory
...

Expected Results:  
...
>>> sys-devel/gettext-0.16.1-r1 merged.
...
Comment 1 zeuner 2007-11-22 17:05:26 UTC
Created attachment 136691 [details]
build log for gettext
Comment 2 Andrei Slavoiu 2009-03-02 00:07:09 UTC
Same problem when crosscompiling from amd64 to arm.
Comment 3 Quentin Casasnovas 2010-06-10 15:17:20 UTC
Created attachment 234863 [details, diff]
Authorize the cross compile of openmp in toolchain.eclass

Should be used with another patch that modify crossdev script too.
Comment 4 Quentin Casasnovas 2010-06-10 15:18:15 UTC
Created attachment 234865 [details, diff]
Authorize the openmp USE flag in crossdev.
Comment 5 Quentin Casasnovas 2010-06-10 15:21:01 UTC
(In reply to comment #4)
> Created an attachment (id=234865) [details]
> Authorize the openmp USE flag in crossdev.
> 

The two patches below should fix the issue, although I don't know if it's the right thing to do. I guess the cross compilation of openmp gave troubles before, but here I cross compile for sparc32 with a gcc-4.3.4 and it works well.

Maybe the sign of the comparator in toolchain.eclass is reversed and the --disable-libgomp should only be appended when compiling with a <=gcc-4.1 ?
Comment 6 SpanKY gentoo-dev 2010-06-20 04:58:05 UTC
Comment on attachment 234865 [details, diff]
Authorize the openmp USE flag in crossdev.

this enables for stage1 of gcc too which isnt really what we want
Comment 7 SpanKY gentoo-dev 2010-06-20 05:04:11 UTC
Comment on attachment 234863 [details, diff]
Authorize the cross compile of openmp in toolchain.eclass

thanks, added this to cvs

http://sources.gentoo.org/eclass/toolchain.eclass?r1=1.429&r2=1.430
Comment 8 SpanKY gentoo-dev 2010-06-20 05:52:56 UTC
ive split the GUSE logic to make it clear what is going on, and allowed openmp for stage2 gcc

http://git.overlays.gentoo.org/gitweb/?p=proj/crossdev.git;a=commitdiff;h=1730fc5f5104f59c59372384003ef19f936e0e8a