Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[solved] Crossdev, ".init_array/.fini_array support"
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
tehdarkknight
Tux's lil' helper
Tux's lil' helper


Joined: 17 Oct 2005
Posts: 80
Location: /dev/college

PostPosted: Mon Jan 15, 2007 4:36 pm    Post subject: [solved] Crossdev, ".init_array/.fini_array support&quo Reply with quote

Hi, I'm planning on using distcc between two boxes, one is i686, the other is x86_64.
I got the i686 to compile for the x86_64 by using crossdev, but I can't get it to work
the other way around. When I run crossdev -t i686, my machine fails to emerge glibc.

Error log:
Code:
>>> Source unpacked.
>>> Compiling source in /var/tmp/cross/i686-pc-linux-gnu/portage/glibc-2.5/work/glibc-2.5 ...
QA Notice: USE Flag 'crosscompile_opts_headers-only' not in IUSE for cross-i686-pc-linux-gnu/glibc-2.5

 ^[[32;01m*^[[0m             ABI:   default
 ^[[32;01m*^[[0m          CBUILD:   x86_64-pc-linux-gnu
 ^[[32;01m*^[[0m           CHOST:   x86_64-pc-linux-gnu
 ^[[32;01m*^[[0m         CTARGET:   i686-pc-linux-gnu
 ^[[32;01m*^[[0m      CBUILD_OPT:
 ^[[32;01m*^[[0m     CTARGET_OPT:
 ^[[32;01m*^[[0m              CC:
 ^[[32;01m*^[[0m          CFLAGS:    -pipe -march=nocona -O2 -fno-strict-aliasing

 ^[[32;01m*^[[0m Configuring GLIBC for nptl with:
                --disable-stackguard-randomization
                --enable-old-ssp-compat
                --with-tls
                --with-__thread
                --enable-add-ons=ports,nptl,c_stubs,libidn
                --enable-kernel=2.6.9
                --without-selinux
                --without-cvs
                --enable-bind-now
                --build=x86_64-pc-linux-gnu
                --host=i686-pc-linux-gnu
                --disable-profile
                --without-gd
                --with-headers=/usr/i686-pc-linux-gnu/usr/include
                --prefix=/usr
                --libdir=/usr/lib
                --mandir=/usr/share/man
                --infodir=/usr/share/info
                --libexecdir=/usr/lib/misc/glibc

checking build system type... x86_64-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking add-on ports for preconfigure fragments... am33 arm hppa m68k mips
configure: running configure fragment for add-on nptl
configure: running configure fragment for add-on c_stubs
configure: running configure fragment for add-on libidn
checking sysdep dirs... sysdeps/i386/elf nptl/sysdeps/unix/sysv/linux/i386/i686 nptl/sysdeps/unix/sysv/linux/i386 sysdeps/unix/sysv/linux/i386 por$
checking for a BSD-compatible install... /bin/install -c
checking whether ln -s works... yes
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-pc-linux-gnu-gcc accepts -g... yes
checking for i686-pc-linux-gnu-gcc option to accept ANSI C... none needed
checking for gcc... gcc
checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E
checking for i686-pc-linux-gnu-g++... no
checking for i686-pc-linux-gnu-c++... no
checking for i686-pc-linux-gnu-gpp... no
checking for i686-pc-linux-gnu-aCC... no
checking for i686-pc-linux-gnu-CC... no
checking for i686-pc-linux-gnu-cxx... no
checking for i686-pc-linux-gnu-cc++... no
checking for i686-pc-linux-gnu-cl... no
checking for i686-pc-linux-gnu-FCC... no
checking for i686-pc-linux-gnu-KCC... no
checking for i686-pc-linux-gnu-RCC... no
checking for i686-pc-linux-gnu-xlC_r... no
checking for i686-pc-linux-gnu-xlC... no
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether /usr/libexec/gcc/i686-pc-linux-gnu/as is GNU as... yes
checking whether /usr/libexec/gcc/i686-pc-linux-gnu/ld is GNU ld... yes
checking for /usr/libexec/gcc/i686-pc-linux-gnu/as... /usr/libexec/gcc/i686-pc-linux-gnu/as
checking version of /usr/libexec/gcc/i686-pc-linux-gnu/as... 2.17, ok
checking for /usr/libexec/gcc/i686-pc-linux-gnu/ld... /usr/libexec/gcc/i686-pc-linux-gnu/ld
checking version of /usr/libexec/gcc/i686-pc-linux-gnu/ld... 2.17, ok
checking for pwd... /bin/pwd
checking for i686-pc-linux-gnu-gcc... (cached) i686-pc-linux-gnu-gcc
checking version of i686-pc-linux-gnu-gcc... 4.1.1, ok
checking for gnumake... no
checking for gmake... gmake
checking version of gmake... 3.81, ok
checking for gnumsgfmt... no
checking for gmsgfmt... gmsgfmtchecking version of gmsgfmt... 0.15, ok
checking for makeinfo... makeinfo
checking version of makeinfo... 4.8, ok
checking for sed... sed
checking version of sed... 4.1.5, ok
checking for autoconf... autoconf
checking whether autoconf works... yes
checking whether ranlib is necessary... no
checking LD_LIBRARY_PATH variable... ok
checking whether GCC supports -static-libgcc... -static-libgcc
checking for bash... /bin/sh
checking for gawk... gawk
checking for perl... /usr/bin/perl
checking for install-info... /usr/bin/install-info
checking for bison... /usr/bin/bison
checking for signed size_t type... no
checking for libc-friendly stddef.h... yes
checking whether we need to use -P to assemble .S files... no
checking whether .text pseudo-op must be used... yes
checking for assembler global-symbol directive... .globl
checking for .set assembler directive... no
checking for assembler .type directive prefix... @
checking for .symver assembler directive... yes
checking for ld --version-script... no
*** WARNING: You should not compile GNU libc without versioning. Not using
*** versioning will introduce incompatibilities so that old binaries
*** will not run anymore.
*** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer).
checking for .previous assembler directive... yes
checking for .protected and .hidden assembler directive... yes
checking whether __attribute__((visibility())) is supported... yes
checking for broken __attribute__((visibility()))... no
checking for broken __attribute__((alias()))... no
checking whether to put _rtld_local into .sdata section... no
checking for .preinit_array/.init_array/.fini_array support... no
configure: error: Need linker with .init_array/.fini_array support.

!!! ERROR: cross-i686-pc-linux-gnu/glibc-2.5 failed.
Call stack:
  ebuild.sh, line 1546:   Called dyn_compile
  ebuild.sh, line 937:   Called src_compile
  glibc-2.5.ebuild, line 1108:   Called src_compile
  glibc-2.5.ebuild, line 1119:   Called toolchain-glibc_src_compile
  glibc-2.5.ebuild, line 240:   Called glibc_do_configure 'nptl'
  glibc-2.5.ebuild, line 891:   Called die

!!! failed to configure glibc
!!! If you need support, post the topmost build error, and the call stack if relevant.


Why does this fail to configure?
_________________
There are 10 kinds of people in the world: People who understand binary and those that don't.
Feel free to IM me to discuss anything as opposed to posting.


Last edited by tehdarkknight on Tue Jan 16, 2007 5:24 am; edited 2 times in total
Back to top
View user's profile Send private message
tehdarkknight
Tux's lil' helper
Tux's lil' helper


Joined: 17 Oct 2005
Posts: 80
Location: /dev/college

PostPosted: Mon Jan 15, 2007 4:54 pm    Post subject: Reply with quote

Update: I tried building glibc-2.4-r4 (crossdev pulls in 2.5 normally), and it failed as well, same error message.
_________________
There are 10 kinds of people in the world: People who understand binary and those that don't.
Feel free to IM me to discuss anything as opposed to posting.
Back to top
View user's profile Send private message
tehdarkknight
Tux's lil' helper
Tux's lil' helper


Joined: 17 Oct 2005
Posts: 80
Location: /dev/college

PostPosted: Mon Jan 15, 2007 5:20 pm    Post subject: Reply with quote

Update: I tried installing versions of each tool that gentoo considers stable:

Code:
# crossdev --binutils 2.16.1-r3 --gcc 4.1.1-r3 --kernel 2.6.17-r2 --libc 2.4-r4 -t i686
---------------------------------------------------------------------------------------------------------------------------------------------------
 * Host Portage ARCH:     amd64
 * Target Portage ARCH:   x86
 * Target System:         i686-pc-linux-gnu
 * Stage:                 4 (C/C++ compiler)

 * binutils:              binutils-2.16.1-r3
 * gcc:                   gcc-4.1.1-r3
 * headers:               linux-headers-2.6.17-r2
 * libc:                  glibc-2.4-r4

 * PORTDIR_OVERLAY:       /usr/portage/local/layman/xeffects
 * PORT_LOGDIR:           /var/log/portage
 * PKGDIR:                /usr/portage/packages/cross/i686-pc-linux-gnu
 * PORTAGE_TMPDIR:        /var/tmp/cross/i686-pc-linux-gnu
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _
 * Forcing the latest versions of binutils-config/gcc-config ...                                                                             [ ok ]
 * Log: /var/log/portage/cross-i686-pc-linux-gnu-binutils.log
 * Emerging cross-binutils ...                                                                                                               [ ok ]
 * Log: /var/log/portage/cross-i686-pc-linux-gnu-gcc-stage1.log
 * Emerging cross-gcc-stage1 ...                                                                                                             [ ok ]
 * Log: /var/log/portage/cross-i686-pc-linux-gnu-linux-headers.log
 * Emerging cross-linux-headers ...                                                                                                          [ ok ]
 * Log: /var/log/portage/cross-i686-pc-linux-gnu-glibc.log
 * Emerging cross-glibc ...

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


Still fails with the same error
_________________
There are 10 kinds of people in the world: People who understand binary and those that don't.
Feel free to IM me to discuss anything as opposed to posting.
Back to top
View user's profile Send private message
tehdarkknight
Tux's lil' helper
Tux's lil' helper


Joined: 17 Oct 2005
Posts: 80
Location: /dev/college

PostPosted: Tue Jan 16, 2007 5:06 am    Post subject: Reply with quote

Any help with this? I've tried a whole bunch of things, and to no avail.

emerge --info
Code:
Portage 2.1.1-r2 (default-linux/amd64/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-r6 x86_64)
=================================================================
System uname: 2.6.18-gentoo-r6 x86_64 Intel(R) Pentium(R) D CPU 3.40GHz
Gentoo Base System version 1.12.6
Last Sync: Mon, 15 Jan 2007 16:59:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17.50.0.9
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=nocona -fomit-frame-pointer -falign-functions=64 -fprefetch-loop-arrays"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=nocona -fomit-frame-pointer -falign-functions=64 -fprefetch-loop-arrays"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig candy distcc distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,--hash-style=both"
LINGUAS="en"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/xeffects"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X a52 aac aalib acpi aim alsa alsa_cards_ali5451 alsa_cards_als4000 alsa_cards_atiixp alsa_cards_atiixp-modem alsa_cards_bt87x alsa_cards_ca0106 alsa_cards_cmipci alsa_cards_emu10k1x alsa_cards_ens1370 alsa_cards_ens1371 alsa_cards_es1938 alsa_cards_es1968 alsa_cards_fm801 alsa_cards_hda-intel alsa_cards_intel8x0 alsa_cards_intel8x0m alsa_cards_maestro3 alsa_cards_trident alsa_cards_usb-audio alsa_cards_via82xx alsa_cards_via82xx-modem alsa_cards_ymfpci alsa_pcm_plugins_adpcm alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugins_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugins_shm alsa_pcm_plugins_softvol arts berkdb bitmap-fonts bzip2 cairo cddb cdparanoia cdr cli cracklib crypt cups dbus dio dlloader dri dvd dvdr elibc_glibc encode esd ffmpeg flac fortran ftp gcj gdbm gif glitz gnome gpm gstreamer gtk gtk2 hal iconv input_devices_joystick input_devices_keyboard input_devices_mouse ipv6 isdnlog jabber java javascript joystick jpeg jpeg2k kde kernel_linux libg++ linguas_en lm_sensors mad matroska mikmod mng mp3 mpeg mplayer msn ncurses nls nptl nptlonly nsplugin nvidia offensive ogg openal opengl pam pcre pdf perl png ppds pppd python qt3 qt4 quicktime readline reflection ruby samba sdl session sockets socks5 spell spl ssl svg tcpd theora threads truetype truetype-fonts type1-fonts udev unicode usb userland_GNU v4l v4l2 video_cards_nvidia vorbis x264 xine xinerama xml xorg xvid yahoo zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS

_________________
There are 10 kinds of people in the world: People who understand binary and those that don't.
Feel free to IM me to discuss anything as opposed to posting.
Back to top
View user's profile Send private message
tehdarkknight
Tux's lil' helper
Tux's lil' helper


Joined: 17 Oct 2005
Posts: 80
Location: /dev/college

PostPosted: Tue Jan 16, 2007 5:23 am    Post subject: Reply with quote

Problem solved. Crossdev fails to emerge glibc when you have LDFLAGS set to "-Wl, --hash-style=both"
I commented out my LDFLAGS, ran crossdev -t i686, and everything is happy now.
_________________
There are 10 kinds of people in the world: People who understand binary and those that don't.
Feel free to IM me to discuss anything as opposed to posting.
Back to top
View user's profile Send private message
ryker
Guru
Guru


Joined: 28 May 2003
Posts: 412
Location: Portage, IN

PostPosted: Sat Aug 09, 2008 3:00 am    Post subject: Reply with quote

Thank you. This post just helped me with a fresh 2008.0 install trying to emerge glibc-2.6.1. I had LDFLAGS="-Wl,O1" that was causing the problem.
_________________
Athlon 64 3200+, 80G WD sata hd + 200G IDE, 1G Geil DDR400, MSI K8T Neo
IntelCore2Duo 2.0Ghz MSI laptop,100G SATA hd, 2G RAM
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
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