Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 379787 - sparc crossdev refuses to build glibc
Summary: sparc crossdev refuses to build glibc
Status: RESOLVED DUPLICATE of bug 361779
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: AMD64 Linux
: Normal major (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-18 20:32 UTC by Dan Miller
Modified: 2011-08-21 16:31 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Miller 2011-08-18 20:32:31 UTC
I am trying to build a sparc toolkit on an AMD64 machine using crossdev

it fails when trying to emerge glibc:

checking whether x86_64-pc-linux-gnu-gcc  -pipe -fcall-used-g6 -O2 -fno-strict-aliasing -fno-unwind-tables supports -mlong-double-128... no
configure: error: this configuration requires -mlong-double-128 support

Reproducible: Always

Steps to Reproduce:
1. crossdev --l 2.11.2 --k 2.6.36.1 --g 4.4.5 --b 2.20.1-r1 --without-headers -t sparc
Actual Results:  
the log from glibc:
...
checking size of long double... 16
running configure fragment for sysdeps/sparc/sparc32/elf
checking for sparc32 TLS support... no
checking for sparc32 ld WDISP22 handling... unknown
running configure fragment for sysdeps/ieee754/ldbl-opt
checking whether x86_64-pc-linux-gnu-gcc  -pipe -fcall-used-g6 -O2 -fno-strict-aliasing -fno-unwind-tables supports -mlong-double-128... no
configure: error: this configuration requires -mlong-double-128 support
 * ERROR: cross-sparc-unknown-linux-gnu/glibc-2.12.2 failed (compile phase):
 *   failed to configure glibc
 * 
 * Call stack:
 *           ebuild.sh, line   56:  Called src_compile
 *         environment, line 3773:  Called eblit-run 'src_compile'
 *         environment, line 1183:  Called eblit-glibc-src_compile
 *   src_compile.eblit, line  204:  Called src_compile
 *         environment, line 3773:  Called eblit-run 'src_compile'
 *         environment, line 1183:  Called eblit-glibc-src_compile
 *   src_compile.eblit, line  212:  Called toolchain-glibc_src_compile
 *   src_compile.eblit, line  123:  Called glibc_do_configure 'nptl'
 *   src_compile.eblit, line   99:  Called die
 * The specific snippet of code:
 *   	"${S}"/configure ${myconf} || die "failed to configure glibc"
 * 
 * If you need support, post the output of 'emerge --info =cross-sparc-unknown-linux-gnu/glibc-2.12.2',
 * the complete build log and the output of 'emerge -pqv =cross-sparc-unknown-linux-gnu/glibc-2.12.2'.
 * This ebuild is from an overlay named 'x-crossdev': '/usr/local/overlays/crossdev/'
 * The complete build log is located at '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/temp/environment'.
 * S: '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/work/glibc-2.12.2'

>>> Failed to emerge cross-sparc-unknown-linux-gnu/glibc-2.12.2, Log file:

>>>  '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/temp/build.log'

 * Messages for package cross-sparc-unknown-linux-gnu/glibc-2.12.2:
 * ERROR: cross-sparc-unknown-linux-gnu/glibc-2.12.2 failed (compile phase):
 *   failed to configure glibc
 * 
 * Call stack:
 *           ebuild.sh, line   56:  Called src_compile
 *         environment, line 3773:  Called eblit-run 'src_compile'
 *         environment, line 1183:  Called eblit-glibc-src_compile
 *   src_compile.eblit, line  204:  Called src_compile
 *         environment, line 3773:  Called eblit-run 'src_compile'
 *         environment, line 1183:  Called eblit-glibc-src_compile
 *   src_compile.eblit, line  212:  Called toolchain-glibc_src_compile
 *   src_compile.eblit, line  123:  Called glibc_do_configure 'nptl'
 *   src_compile.eblit, line   99:  Called die
 * The specific snippet of code:
 *   	"${S}"/configure ${myconf} || die "failed to configure glibc"
 * 
 * If you need support, post the output of 'emerge --info =cross-sparc-unknown-linux-gnu/glibc-2.12.2',
 * the complete build log and the output of 'emerge -pqv =cross-sparc-unknown-linux-gnu/glibc-2.12.2'.
 * This ebuild is from an overlay named 'x-crossdev': '/usr/local/overlays/crossdev/'
 * The complete build log is located at '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/temp/environment'.
 * S: '/var/tmp/portage/cross-sparc-unknown-linux-gnu/glibc-2.12.2/work/glibc-2.12.2'


 * glibc failed :(
 * If you file a bug, please attach the following logfiles:
 * /var/log/portage/cross-sparc-unknown-linux-gnu-info.log
 * /var/log/portage/cross-sparc-unknown-linux-gnu-glibc.log


Expected Results:  
success, in the form of a cross-compiler
Comment 1 Dan Miller 2011-08-19 03:23:14 UTC
Just tested the same thing on another linux box I have (very similar to this one) and it produced the same results.
Comment 2 Dan Miller 2011-08-20 18:36:12 UTC
Through further research, I found that the -mlong-double-128 flag is not supported on the x86_64 architecture.  However, that flag forces a type of "long double" to take up bits, which is the default anyways for x86_64, so theoretically, if the can get that configure file to ignore the fact that that flag isn't supported, it should compile fine.  I tried modifying the configure.in file in the source to ignore this check, but crossdev insists on downloading the sources fresh whenever it is run.

Are there any ways around this?
Comment 3 Dan Miller 2011-08-20 18:38:36 UTC
s/up bits/up 128 bits/
Comment 4 SpanKY gentoo-dev 2011-08-21 16:31:23 UTC

*** This bug has been marked as a duplicate of bug 361779 ***