Public bug reported:

Attempting to cross-build eglibc for arm64 gives this:

        (exec 3>&1; exit `( ( (  cd build-tree/arm64-libc && 
CC="aarch64-linux-gnu-gcc-4.7" CXX="aarch64-linux-gnu-g++-4.7" AUTOCONF=false 
MAKEINFO=: /home/wookey/linaro/armv8/toolchain/raringnew/eglibc-2.17/configure 
--host=aarch64-linux-gnu --build=$configure_build --prefix=/usr --without-cvs 
--enable-add-ons=libidn,"ports nptl " --enable-profile --without-selinux 
--enable-stackguard-randomization --enable-obsolete-rpc 
--with-pkgversion="Ubuntu EGLIBC 2.17-0ubuntu2" 
--with-bugurl="https://bugs.launchpad.net/ubuntu/+source/eglibc/+bugs";  
--with-headers=/home/wookey/linaro/armv8/toolchain/raringnew/eglibc-2.17/debian/include
 --enable-kernel=2.6.32 --with-selinux --enable-multi-arch --disable-profile ) 
2>&1 3>&-; echo $? >&4) | tee  -a build-tree/log-build-aarch64-linux-gnu-libc 
>&3) 4>&1`)
Build started: Wed, 06 Feb 2013 14:38:06 +0000
---------------
configure: loading site script /etc/dpkg-cross/cross-config.arm64
Reading Cross Config Cache (/etc/dpkg-cross/cross-config.arm64)
Reading /etc/dpkg-cross/cross-config.cache
checking build system type... x86_64-pc-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for aarch64-linux-gnu-gcc... aarch64-linux-gnu-gcc-4.7
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether aarch64-linux-gnu-gcc-4.7 accepts -g... yes
checking for aarch64-linux-gnu-gcc-4.7 option to accept ISO C89... none needed
checking for gcc... gcc
checking how to run the C preprocessor... aarch64-linux-gnu-gcc-4.7 -E
checking whether we are using the GNU C++ compiler... yes
checking whether aarch64-linux-gnu-g++-4.7 accepts -g... yes
checking for aarch64-linux-gnu-readelf... aarch64-linux-gnu-readelf
checking for sysdeps preconfigure fragments... x86_64
configure: running configure fragment for add-on libidn
checking add-on ports for preconfigure fragments... aarch64 alpha am33 arm hppa 
ia64 m68k mips powerpc tile
configure: running configure fragment for add-on nptl
checking for assembler and linker STT_GNU_IFUNC support... no
checking whether .text pseudo-op must be used... yes
configure: error: --enable-multi-arch support requires assembler and linker 
support
make: *** 
[/home/wookey/linaro/armv8/toolchain/raringnew/eglibc-2.17/stamp-dir/configure_libc]
 Error 1
dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2


config.log says:
configure:4220: checking for assembler and linker STT_GNU_IFUNC support

There are no relocations in this file.
configure:4251: result: no
configure:4254: checking whether .text pseudo-op must be used
configure:4264: aarch64-linux-gnu-gcc-4.7  -c conftest.s 1>&5
configure:4267: $? = 0
configure:4278: result: yes
configure:4284: error: --enable-multi-arch support requires assembler and 
linker support

So this is checking for GNU IFUNC support, (result in
$libc_cv_ld_gnu_indirect_function)

We don't have ifunc support in arm64 so this test is correctly failing.

The question is why should multiarch support be dependent on IFUNC (A
mechanism for choosing at elf load time which of two different functions
to run, depending on machine capabilities. This has nothing obviously to
do with multiarch paths.

It seems to come from this change:
http://sourceware-org.1504.n7.nabble.com/PATCH-roland-configure-multiarch-Fix-multiarch-handling-in-sysdeps-generation-td218888.html

This makes no sense to me. Multiarch worked just fine in  eglibc 2.16
for arm64 so it must be possible to make it work in 2.17 without needing
ifunc. But I really don't understand what's going on here. Is this some
other 'multi-arch' from the Debian one?

crossbuild-essential-arm64 is uninstallable in raring until this is
fixed because the build-arch libc has already moved on.

** Affects: eglibc (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1117602

Title:
  eglibc does not crossbuild for arm64

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/1117602/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to