This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[POWER] Error when trying to compile 32 bit libs on 64 bit machine ...


Hi,

I am trying to cross compile a powerpc 32 bit version of glibc on a powerpc 64 machine. Configuration works fine:

[xxx@yyy:glibcbuild] $ ../glibc-2.14/configure --prefix=$SCRATCH/usr/local --host=ppc-unknown-linux-gnu
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
checking build system type... powerpc64-unknown-linux-gnu
checking host system type... powerpc-unknown-linux-gnu
checking for ppc-unknown-linux-gnu-gcc... no
checking for gcc... gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for gcc... gcc
checking how to run the C preprocessor... gcc -E
checking for ppc-unknown-linux-gnu-g++... no
checking for ppc-unknown-linux-gnu-c++... no
checking for ppc-unknown-linux-gnu-gpp... no
checking for ppc-unknown-linux-gnu-aCC... no
checking for ppc-unknown-linux-gnu-CC... no
checking for ppc-unknown-linux-gnu-cxx... no
checking for ppc-unknown-linux-gnu-cc++... no
checking for ppc-unknown-linux-gnu-cl.exe... no
checking for ppc-unknown-linux-gnu-FCC... no
checking for ppc-unknown-linux-gnu-KCC... no
checking for ppc-unknown-linux-gnu-RCC... no
checking for ppc-unknown-linux-gnu-xlC_r... no
checking for ppc-unknown-linux-gnu-xlC... no
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
configure: running configure fragment for add-on libidn
configure: running configure fragment for add-on nptl
checking for assembler gnu_indirect_function symbol type support... yes
checking whether .text pseudo-op must be used... yes
checking for assembler global-symbol directive... .globl
checking for assembler .type directive prefix... @
checking sysdep dirs... sysdeps/powerpc/powerpc32/elf sysdeps/powerpc/elf sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu sysdeps/powerpc/powerpc32/fpu nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32 sysdeps/unix/sysv/linux/powerpc/powerpc32 nptl/sysdeps/unix/sysv/linux/powerpc sysdeps/unix/sysv/linux/powerpc sysdeps/ieee754/ldbl-128ibm sysdeps/ieee754/ldbl-opt nptl/sysdeps/unix/sysv/linux nptl/sysdeps/pthread sysdeps/pthread sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet nptl/sysdeps/unix/sysv sysdeps/unix/sysv sysdeps/unix/powerpc nptl/sysdeps/unix sysdeps/unix sysdeps/posix sysdeps/powerpc/powerpc32 sysdeps/wordsize-32 sysdeps/powerpc/fpu nptl/sysdeps/powerpc sysdeps/powerpc sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether as is GNU as... yes
checking whether ld is GNU ld... yes
checking for as... as
checking version of as... 2.20.51.0.2, ok
checking for ld... ld
checking version of ld... 2.20.51.0.2, ok
checking for pwd... /bin/pwd
checking for ppc-unknown-linux-gnu-gcc... gcc
checking version of gcc... 4.4.4, ok
checking for gnumake... no
checking for gmake... gmake
checking version of gmake... 3.81, ok
checking for gnumsgfmt... no
checking for gmsgfmt... no
checking for msgfmt... msgfmt
checking version of msgfmt... 0.17, ok
checking for makeinfo... makeinfo
checking version of makeinfo... 4.13, ok
checking for sed... sed
checking version of sed... 4.2.1, ok
checking for autoconf... autoconf
checking whether autoconf works... yes
checking LD_LIBRARY_PATH variable... ok
checking whether GCC supports -static-libgcc... -static-libgcc
checking for bash... /bin/bash
checking for gawk... gawk
checking for perl... /usr/bin/perl
checking for install-info... /sbin/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 for .set assembler directive... yes
checking for assembler gnu_unique_object symbol type... yes
checking for .symver assembler directive... yes
checking for ld --version-script... yes
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... yes
checking for .preinit_array/.init_array/.fini_array support... yes
checking for libunwind-support in compiler... no
checking for -z nodelete option... yes
checking for -z nodlopen option... yes
checking for -z initfirst option... yes
checking for -z relro option... yes
checking for -Bgroup option... yes
checking for libgcc_s suffix...
checking for --as-needed option... yes
checking whether --noexecstack is desirable for .S files... yes
checking for -z combreloc... yes
checking for -z execstack... yes
checking for -fpie... yes
checking for --hash-style option... yes
checking for -fno-toplevel-reorder -fno-section-anchors... yes
checking for -fstack-protector... yes
checking for -fgnu89-inline... yes
checking whether cc puts quotes around section names... no
checking for assembler .weak directive... yes
checking whether CFI directives are supported... yes
checking for ld --no-whole-archive... yes
checking for gcc -fexceptions... yes
checking whether clobbering cr0 causes problems... no
checking for __builtin_expect... yes
checking for __builtin_memset... no
checking for redirection of built-in functions... yes
checking for __thread... yes
checking for tls_model attribute... yes
checking for libgd... no
checking for is_selinux_enabled in -lselinux... yes
checking for NSCD Flask permissions in selinux/av_permissions.h... yes
checking for audit_log_user_avc_message in -laudit... yes
checking for cap_init in -lcap... no
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking size of long double... 16
running configure fragment for sysdeps/powerpc/powerpc32/elf
checking for powerpc32 TLS support... yes
running configure fragment for sysdeps/unix/sysv/linux/powerpc
checking whether gcc -g -O2 -mlong-double-128 uses IBM extended format... yes
running configure fragment for sysdeps/ieee754/ldbl-opt
checking whether gcc -g -O2 supports -mlong-double-128... yes
running configure fragment for nptl/sysdeps/pthread
checking for forced unwind support... yes
checking for C cleanup handling... yes
running configure fragment for sysdeps/pthread
running configure fragment for sysdeps/unix/sysv/linux
checking for grep that handles long lines and -e... (cached) /bin/grep
checking for egrep... (cached) /bin/grep -E
checking installed Linux kernel header files... 2.0.10 or later
running configure fragment for sysdeps/powerpc/powerpc32
checking for R_PPC_REL16 gas support... yes
checking for -msecure-plt by default... no
running configure fragment for sysdeps/powerpc
checking for .machine support... yes
checking for old glibc 2.0.x headers... no
checking whether -fPIC is default... no
configure: creating ./config.status
config.status: creating config.make
config.status: creating Makefile
config.status: creating config.h
config.status: executing default commands


But make fails with the following ugly output:

gcc ../sysdeps/powerpc/powerpc32/libgcc-compat.S -c -I../include -I/bgsys/zzz/aaa/scratch/xxx/glibcbuild/csu -I/bgsys/zzz/aaa/scratch/xxx/glibcbuild -I../sysdeps/powerpc/powerpc32/elf -I../sysdeps/powerpc/elf -I../sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu -I../sysdeps/powerpc/powerpc32/fpu -I../nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32 -I../sysdeps/unix/sysv/linux/powerpc/powerpc32 -I../nptl/sysdeps/unix/sysv/linux/powerpc -I../sysdeps/unix/sysv/linux/powerpc -I../sysdeps/ieee754/ldbl-128ibm -I../sysdeps/ieee754/ldbl-opt -I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread -I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu -I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet -I../nptl/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../sysdeps/unix/powerpc -I../nptl/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/powerpc/powerpc32 -I../sysdeps/wordsize-32 -I../sysdeps/powerpc/fpu -I../nptl/sysdeps/powerpc -I../sysdeps/powerpc -I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl -I.. -I../libio -I. -D_LIBC_REENTRANT -include ../include/libc-symbols.h -DPIC -DSHARED -DHAVE_INITFINI -DASSEMBLER -I/bgsys/zzz/aaa/scratch/xxx/glibcbuild/csu/. -Wa,--noexecstack -o /bgsys/zzz/aaa/scratch/xxx/glibcbuild/csu/libgcc-compat.os -MD -MP -MF /bgsys/zzz/aaa/scratch/xxx/glibcbuild/csu/libgcc-compat.os.dt -MT /bgsys/zzz/aaa/scratch/xxx/glibcbuild/csu/libgcc-compat.os
../sysdeps/powerpc/powerpc32/libgcc-compat.S: Assembler messages:
../sysdeps/powerpc/powerpc32/libgcc-compat.S:70: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:70: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:77: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:77: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:84: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:84: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:91: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:91: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:98: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:98: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:105: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:105: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:112: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:112: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:119: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:119: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:126: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:126: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:133: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:133: Error: junk at end of line: `@local'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:140: Error: syntax error; found `@' but expected `,'
../sysdeps/powerpc/powerpc32/libgcc-compat.S:140: Error: junk at end of line: `@local'


Seems like inline assembly is being compiled wrong. Any workarounds or ideas?

Regards,
Matthias

P.S.: Red Hat Enterprise Linux 6, Power 6


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]