ct-ng: CLooG link failure in canadian-cross context
Esben Haabendal
eha@dev.doredevelopment.dk
Wed Jul 28 14:19:00 GMT 2010
On Wed, 2010-07-28 at 11:51 +0200, Bernhard Pfund wrote:
> [ALL ] libtool: link: i386-host_pc-mingw32-ranlib .libs/libcloog.a
> [ALL ] libtool: link: ( cd ".libs" && rm -f "libcloog.la" && ln
> -s
> "../libcloog.la" "libcloog.la" )
> [ALL ] /bin/bash ./libtool --tag=CC --mode=link
> i386-host_pc-mingw32-gcc
> -Wall -fomit-frame-pointer -pipe
> -L/home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib
> -L/home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib
> -lstdc++ -o cloog.exe cloog.o libcloog.la -lgmp -lppl_c -lppl -lgmpxx
> [ALL ] libtool: link: i386-host_pc-mingw32-gcc -Wall
> -fomit-frame-pointer
> -pipe -o cloog.exe cloog.o
> -L/home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib
> ./.libs/libcloog.a
> /home/bernhard/x-tools/i686-pc-mingw32/i686-pc-mingw32/lib/libstdc
> ++.a
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libppl_c.a
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libppl.a
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libgmpxx.a
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libgmp.a
> [ALL ]
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libppl_c.a(ppl_c_implementation_common.o):ppl_c_implementation_common.cc:(.text+0x641):
> undefined reference to `operator delete(void*)'
> [ALL ]
> /home/bernhard/canadian/targets/powerpc-e500v2Can-linux-uclibcspe/build/static/lib/libppl_c.a(ppl_c_implementation_common.o):ppl_c_implementation_common.cc:(.text+0x65e):
> undefined reference to `std::ios_base::Init::~Init()'
Why is libtool being called with --tag=CC and not --tag=CXX when it is
used to link C++ code?
Maybe crosstool-ng should "build" a cross libtool companion when doing
canadian cross? (see http://www.metastatic.org/text/libtool.html)
Or even better (for me), allow environment to provide values for setting
LIBTOOL env variable to something else when doing cross
compilation/linking than when compiling/linking for build host. And for
canadian, we actually need to be allowed to specify 3 different libtool
commands to run. Of-course, a sane default would be too let
LIBTOOL=libtool for build host, LIBTOOL=$CT_HOST_PREFIX-libtool for host
and LIBTOOL=$CT_TARGET_PREFIX-libtool for target.
/Esben
--
For unsubscribe information see http://sourceware.org/lists.html#faq
More information about the crossgcc
mailing list