Fwd: Compile issue for parisc/hppa platform
Greg Chandler
chandleg@wizardsworks.org
Sat Sep 7 01:11:10 GMT 2024
I was attempting to build an hppa-linux-gnu cross chain, and got this
error:
make[2]: Entering directory
'/opt/cross-build/hppa-linux-gnu/glibc-2.40/elf'
hppa-linux-gnu-gcc dl-find_object.c -c -std=gnu11 -fgnu89-inline -g -O2
-Wall -Wwrite-strings -Wundef -Werror -fmerge-all-constants
-frounding-math -fno-stack-protector -fno-common -Wp,-U_FORTIFY_SOURCE
-Wstrict-prototypes -Wold-style-definition -fmath-errno -fno-pie
-ftls-model=initial-exec -I../include
-I/opt/cross-build/hppa-linux-gnu/glibc/elf
-I/opt/cross-build/hppa-linux-gnu/glibc
-I../sysdeps/unix/sysv/linux/hppa -I../sysdeps/hppa/nptl
-I../sysdeps/unix/sysv/linux/include -I../sysdeps/unix/sysv/linux
-I../sysdeps/nptl -I../sysdeps/pthread -I../sysdeps/gnu
-I../sysdeps/unix/inet -I../sysdeps/unix/sysv -I../sysdeps/unix
-I../sysdeps/posix -I../sysdeps/hppa/hppa1.1 -I../sysdeps/wordsize-32
-I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64
-I../sysdeps/hppa/fpu -I../sysdeps/hppa -I../sysdeps/ieee754
-I../sysdeps/generic -I.. -I../libio -I. -nostdinc -isystem
/opt/cross-compile/lib/gcc/hppa-linux-gnu/14.2.0/include -isystem
/opt/cross-compile/lib/gcc/hppa-linux-gnu/14.2.0/include-fixed -isystem
/opt/cross-compile/hppa-linux-gnu/include -D_LIBC_REENTRANT -include
/opt/cross-build/hppa-linux-gnu/glibc/libc-modules.h -DMODULE_NAME=libc
-include ../include/libc-symbols.h -DTOP_NAMESPACE=glibc -o
/opt/cross-build/hppa-linux-gnu/glibc/elf/dl-find_object.o -MD -MP -MF
/opt/cross-build/hppa-linux-gnu/glibc/elf/dl-find_object.o.dt -MT
/opt/cross-build/hppa-linux-gnu/glibc/elf/dl-find_object.o
In file included from ../include/atomic.h:49,
from dl-find_object.c:20:
In function '_dlfo_update_init_seg',
inlined from '_dl_find_object_update_1' at dl-find_object.c:690:30,
inlined from '_dl_find_object_update' at dl-find_object.c:806:13:
../sysdeps/unix/sysv/linux/hppa/atomic-machine.h:44:4: error:
'__atomic_store_4' writing 4 bytes into a region of size 0 overflows the
destination [-Werror=stringop-overflow=]
44 | __atomic_store_n ((mem), (val), __ATOMIC_RELAXED);
\
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dl-find_object.c:645:3: note: in expansion of macro
'atomic_store_relaxed'
645 | atomic_store_relaxed (&seg->size, new_seg_size);
| ^~~~~~~~~~~~~~~~~~~~
In function '_dl_find_object_update':
cc1: note: destination object is likely at address zero
cc1: all warnings being treated as errors
make[2]: *** [../o-iterator.mk:9:
/opt/cross-build/hppa-linux-gnu/glibc/elf/dl-find_object.o] Error 1
make[2]: Leaving directory
'/opt/cross-build/hppa-linux-gnu/glibc-2.40/elf'
make[1]: *** [Makefile:484: elf/subdir_lib] Error 2
make[1]: Leaving directory '/opt/cross-build/hppa-linux-gnu/glibc-2.40'
make: *** [Makefile:12: install] Error 2
Additional info:
hppa-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=hppa-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/opt/cross-compile/libexec/gcc/hppa-linux-gnu/14.2.0/lto-wrapper
Target: hppa-linux-gnu
Configured with: ../gcc-14.2.0/configure --prefix=/opt/cross-compile
--target=hppa-linux-gnu --enable-languages=c,c++ --disable-multilib
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 14.2.0 (GCC)
All commands used to do the build:
TARGET_ARCH="hppa-linux-gnu"
PLATFORM_ARCH="parisc"
cd /opt/cross-compile
export PATH="/opt/cross-compile/bin:$PATH"
rm -R /opt/cross-build 2>/dev/null
mkdir /opt/cross-build
mkdir /opt/cross-build/$TARGET_ARCH
cd /opt/cross-build/$TARGET_ARCH
tar -xzf /opt/cross-compiler-sources/binutils-2.43.tar.gz
tar -xzf /opt/cross-compiler-sources/cloog-0.18.1.tar.gz
tar -xzf /opt/cross-compiler-sources/gcc-14.2.0.tar.gz
tar -xzf /opt/cross-compiler-sources/glibc-2.40.tar.gz
tar -xzf /opt/cross-compiler-sources/gmp-6.3.0.tar.gz
tar -xjf /opt/cross-compiler-sources/isl-0.24.tar.bz2
tar -xf /opt/cross-compiler-sources/linux-6.10.8.tar.xz
tar -xzf /opt/cross-compiler-sources/mpc-1.3.1.tar.gz
tar -xzf /opt/cross-compiler-sources/mpfr-4.2.1.tar.gz
cd /opt/cross-build/$TARGET_ARCH/gcc-14.2.0
ln -s ../mpfr-4.2.1 mpfr
ln -s ../gmp-6.3.0 gmp
ln -s ../mpc-1.3.1 mpc
ln -s ../isl-0.24 isl
ln -s ../cloog-0.18.1 cloog
cd ..
cd /opt/cross-build/$TARGET_ARCH/linux-6.10.8
make ARCH=$PLATFORM_ARCH
INSTALL_HDR_PATH=/opt/cross-compile/$TARGET_ARCH headers_install
cd ..
mkdir /opt/cross-build/$TARGET_ARCH/binutils
cd /opt/cross-build/$TARGET_ARCH/binutils
../binutils-2.43/configure --prefix=/opt/cross-compile
--target=$TARGET_ARCH --disable-multilib
make -j4
make install
cd ..
mkdir /opt/cross-build/$TARGET_ARCH/gcc
cd /opt/cross-build/$TARGET_ARCH/gcc
../gcc-14.2.0/configure --prefix=/opt/cross-compile
--target=$TARGET_ARCH --enable-languages=c,c++ --disable-multilib
make -j4 all-gcc
make install-gcc
cd ..
mkdir /opt/cross-build/$TARGET_ARCH/glibc
cd /opt/cross-build/$TARGET_ARCH/glibc
../glibc-2.40/configure --prefix=/opt/cross-compile/$TARGET_ARCH
--build=$MACHTYPE --host=$TARGET_ARCH --target=$TARGET_ARCH
--with-headers=/opt/cross-compile/$TARGET_ARCH/include
--disable-multilib libc_cv_forced_unwind=yes
make install-bootstrap-headers=yes install-headers
make -j4 csu/subdir_lib
install csu/crt1.o csu/crti.o csu/crtn.o
/opt/cross-compile/$TARGET_ARCH/lib
$TARGET_ARCH-gcc -nostdlib -nostartfiles -shared -x c /dev/null -o
/opt/cross-compile/$TARGET_ARCH/lib/libc.so
touch /opt/cross-compile/$TARGET_ARCH/include/gnu/stubs.h
cd ..
cd /opt/cross-build/$TARGET_ARCH/gcc
make -j4 all-target-libgcc
make install-target-libgcc
cd ..
cd /opt/cross-build/$TARGET_ARCH/glibc
make -j4
More information about the Libc-help
mailing list