libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: libstdc++.la listed in dependency_libs of a static C++ library?


From: Benoit Sigoure
Subject: Re: libstdc++.la listed in dependency_libs of a static C++ library?
Date: Tue, 03 Apr 2007 22:23:53 +0200
User-agent: Internet Messaging Program (IMP) H3 (4.0.2)

Quoting Ralf Wildenhues <address@hidden>:

Hello Benoit,

* Benoit Sigoure wrote on Tue, Apr 03, 2007 at 04:19:25PM CEST:

[Compilation of the libkernel]

This link line:

/bin/sh ../libtool --tag=CXX   --mode=link arm-linux-g++ [losts of -Warning
flags] -pthread -g -O2 -pipe -static  -o libkernel.la -rpath
/home/build/built/kernel1-stable_cross_arm_eldk/gostai/kernel/arm-linux/korebot

does not match this file:

libkernel.la: http://www.tsunanet.net/~tsuna/eldk-libtool-problem/libkernel.la

because $libdir is empty in the latter, but -rpath is listed in the
former.

Wow, that's weird.  I swear though that I have the compilation logs and I'm a
100% sure that this is what happened.


That's not the only (or important, FWIW) issue here, though.  The
installed libstdc++.la file is broken.  Reason for that include
bugs/limitations in Libtool, bugs in GCC, and possibly in the script
that has been used to build it.  (AFAIK there is a related GCC bug
listed in their bugzilla, not sure if it was 5291 and no, please
don't expect me to do an analysis of your particular issue; if I had
the time to do that, I'd be working on the GCC bug.)

Yeah I understand, that's fine by me, I simply asked for some basic analysis
because I wasn't sure that the problem really came from ELDK. I'll try to tell
the maintainers that their .la file is strange (is it really *broken*? What
leads you to this strong conclusion?).

I can hack the .la file or simply rebuild GCC arm-linux myself. In fact I used
ELDK because the code I'm compiling will be linked to some other code on which
I have no control, and that code will be compiled with ELDK-arm.  I'm not an
expert in ABI compatibility and I was afraid that using a different version of
GCC (even if it is only very slightly different) would lead to obscure
problems.


Anyway the libdir should match the final location of the file, not
some $DESTDIR-prefixed temporary location.  Likewise for entries in
dependency_libs.

Alright, I'll report that to ELDK maintainers.


Hope that helps at least a little bit.


It helps a lot, thank you very much for your support.
BTW I'll have the papers for the FSF pretty soon and will carry on my work on
"bootstrap-clean" next week.

Cheers,

--
Benoit Sigoure aka Tsuna
EPITA Research and Development Laboratory





reply via email to

[Prev in Thread] Current Thread [Next in Thread]