[libstdc++] Mis-configure _GLIBCXX_LONG_DOUBLE_COMPAT?
Richard Henderson
rth@redhat.com
Fri Aug 31 00:16:00 GMT 2012
I've seen this today both for alpha and s390 cross from x86_64:
> libtool: compile: /home/rth/work/gcc/bld-s390/./gcc/xgcc -shared-libgcc -B/home/rth/work/gcc/bld-s390/./gcc -nostdinc++ -L/home/rth/work/gcc/bld-s390/s390x-linux/libstdc++-v3/src -L/home/rth/work/gcc/bld-s390/s390x-linux/libstdc++-v3/src/.libs -B/home/rth/work/gcc/run-cross/s390x-linux/bin/ -B/home/rth/work/gcc/run-cross/s390x-linux/lib/ -isystem /home/rth/work/gcc/run-cross/s390x-linux/include -isystem /home/rth/work/gcc/run-cross/s390x-linux/sys-include -I/home/rth/work/gcc/git-master/libstdc++-v3/../libgcc -I/home/rth/work/gcc/bld-s390/s390x-linux/libstdc++-v3/include/s390x-linux -I/home/rth/work/gcc/bld-s390/s390x-linux/libstdc++-v3/include -I/home/rth/work/gcc/git-master/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=locale-inst.lo -g -O2 -D_GNU_SOURCE -c ../../../../../git-master/libstdc++-v3/src/c++98/locale-inst.cc -fPIC -DPIC -o loca!
le-inst.o
> ../../../../../git-master/libstdc++-v3/src/c++98/locale-inst.cc:362:8: error: âvoid _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES3_S3_RSt8ios_basecRKSs()â aliased to undefined symbol â_ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES4_S4_RSt8ios_basecRKSsâ
> _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES3_S3_RSt8ios_basecRKSs);
> ^
> ../../../../../git-master/libstdc++-v3/src/c++98/locale-inst.cc:329:19: note: in definition of macro '_GLIBCXX_LDBL_COMPAT'
> extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
> ^
> ../../../../../git-master/libstdc++-v3/src/c++98/locale-inst.cc:360:8: error: âvoid _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES3_S3_RSt8ios_basecRKSs()â aliased to undefined symbol â_ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES4_S4_RSt8ios_basecRKSsâ
> _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES3_S3_RSt8ios_basecRKSs);
> ^
> ../../../../../git-master/libstdc++-v3/src/c++98/locale-inst.cc:329:19: note: in definition of macro '_GLIBCXX_LDBL_COMPAT'
> extern "C" void ldbl (void) __attribute__ ((alias (#dbl), weak))
> ^
where, given that I've configured --with-long-double-128, appears to have
mis-identified the correct setting of _GLIBCXX_LONG_DOUBLE_COMPAT.
Is anyone else seeing this? Is this a problem for cross-compile only?
Certainly editing config.h after the fact lets the build complete...
r~
More information about the Gcc
mailing list