Re: libstdc++

2005-10-27 Thread Ralf Wildenhues
Hi Ethan,

Please keep the mailing list copied; this is useful for others as well.
Thank you.

* Ethan A Burns wrote on Thu, Oct 27, 2005 at 03:01:56AM CEST:

 The link line that is failing is:
 /bin/sh ../libtool --mode=link gcc -g -pipe -Wall -Werror -I../src -g -O2 
 -I/usr/include/SDL -D_REENTRANT  -L/usr/lib -Wl,-rpath,/usr/lib -lSDL 
 -lpthread -o test  test.o -L../src -lemf -lSDL -lpthread -lGLU -lGL
 gcc -g -pipe -Wall -Werror -I../src -g -O2 -I/usr/include/SDL -D_REENTRANT 
 -Wl,-rpath -Wl,/usr/lib -o .libs/test test.o  -L/usr/lib 
 -L/home/eaburns/emf-0.9_1/src /home/eaburns/emf-0.9_1/src/.libs/libemf.so 
 -L/usr/i686-pc-linux-gnu/bin -L/usr/i686-pc-linux-gnu/lib 
 -L/usr/lib/gcc-lib/i686-pc-linux-gnu/../../../i686-pc-linux-gnu/lib 
 -L/usr/X11R6/lib /usr/lib/libSDL.so 
 //usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so -lgcc_s -lc 
 /usr/lib/libaa.so -lncurses /usr/lib/libGLU.so -lSM -lICE -lXmu -lXt -lXi 
 -lpthread /usr/lib/libGL.so -lm -lX11 -lXext -ldl -Wl,--rpath 
 -Wl,//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130
 gcc: //usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so: No such 
 file or directory
 make[1]: *** [test] Error 1
 
 Thank you for looking at my problem, if there is any more information
 that you may need I will be glad to try and find it for you.

I think I know what's happening: the libstdc++ is picked up as a
dependency library for one of the libraries you link against.  To find
out which one, you could check each library's .la file, if present and
where found.

However, we'll be able to pinpoint it easily if you just send the output
of this command back (it's above line with --debug added), when executed
in the right directory:

/bin/sh ../libtool --debug --mode=link gcc -g -pipe -Wall -Werror -I../src -g 
-O2 -I/usr/include/SDL -D_REENTRANT  -L/usr/lib -Wl,-rpath,/usr/lib -lSDL 
-lpthread -o test  test.o -L../src -lemf -lSDL -lpthread -lGLU -lGL

You can compress (bzip2, gzip) if you like.

One more thing: I believe you should get rid of the
  -L/usr/lib -Wl,-rpath,/usr/lib
part, wherever that came from.  Probably
  sdl-config --libs
gave you that, unnecessarily.

Cheers,
Ralf


___
Bug-libtool mailing list
Bug-libtool@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-libtool


Re: libstdc++

2005-10-27 Thread Ethan A Burns
Hello Ralf,
Sorry, I did not realize I didn't have the list CCed.  I removed the 
sdl-config -libs from the configure script with the same results.  I also ran
the debug command that you requested the output should be attached as a .bz2.

Thanks!,
--Ethan--

Hi Ethan,

Please keep the mailing list copied; this is useful for others as well.
Thank you.

* Ethan A Burns wrote on Thu, Oct 27, 2005 at 03:01:56AM CEST:

 The link line that is failing is:
 /bin/sh ../libtool --mode=link gcc -g -pipe -Wall -Werror -I../src -g -O2 -I
/usr/include/SDL -D_REENTRANT  -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread 
-o test  test.o -L../src -lemf -lSDL -lpthread -lGLU -lGL
 gcc -g -pipe -Wall -Werror -I../src -g -O2 -I/usr/include/SDL -D_REENTRANT -
Wl,-rpath -Wl,/usr/lib -o .libs/test test.o  -L/usr/lib -L/home/eaburns/emf-0.
9_1/src /home/eaburns/emf-0.9_1/src/.libs/libemf.so -L/usr/i686-pc-linux-gnu/b
in -L/usr/i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/../../../
i686-pc-linux-gnu/lib -L/usr/X11R6/lib /usr/lib/libSDL.so //usr/lib/gcc-lib/i6
86-pc-linux-gnu/3.3.5-20050130/libstdc++.so -lgcc_s -lc /usr/lib/libaa.so -lnc
urses /usr/lib/libGLU.so -lSM -lICE -lXmu -lXt -lXi -lpthread /usr/lib/libGL.s
o -lm -lX11 -lXext -ldl -Wl,--rpath -Wl,//usr/lib/gcc-lib/i686-pc-linux-gnu/3.
3.5-20050130
 gcc: //usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so: No suc
h file or directory
 make[1]: *** [test] Error 1
 
 Thank you for looking at my problem, if there is any more information
 that you may need I will be glad to try and find it for you.

I think I know what's happening: the libstdc++ is picked up as a
dependency library for one of the libraries you link against.  To find
out which one, you could check each library's .la file, if present and
where found.

However, we'll be able to pinpoint it easily if you just send the output
of this command back (it's above line with --debug added), when executed
in the right directory:

/bin/sh ../libtool --debug --mode=link gcc -g -pipe -Wall -Werror -I../src -g 
-O2 -I/usr/include/SDL -D_REENTRANT  -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpt
hread -o test  test.o -L../src -lemf -lSDL -lpthread -lGLU -lGL

You can compress (bzip2, gzip) if you like.

One more thing: I believe you should get rid of the
-L/usr/lib -Wl,-rpath,/usr/lib
part, wherever that came from.  Probably
sdl-config --libs
gave you that, unnecessarily.

Cheers,
Ralf



binySlLrc5Fgr.bin
Description: application/bzip2
___
Bug-libtool mailing list
Bug-libtool@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-libtool


Re: libstdc++

2005-10-27 Thread Ralf Wildenhues
Hi Ethan,

* Ethan A Burns wrote on Thu, Oct 27, 2005 at 06:14:16PM CEST:

   Sorry, I did not realize I didn't have the list CCed.

No problem at all.  The reminder is also to avoid unpleasant surprises
on your side.  ;-)

 I removed the sdl-config -libs from the configure script with the same
 results.

OK.  It /could/ be that this may actually break things, but it looks
like it doesn't.  (The underlying issue here is that `sdl-config -libs'
just should not output the /usr/lib part, the fact that you are using it
in general is quite alright.)

 I also ran the debug command that you requested the output should be
 attached as a .bz2.

Thanks.  It confirms my suspicion:  The file
  /usr/lib/libSDL.la
contains a reference to
  //usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.la

and surely /home/eaburns/emf-0.9_1/src/libemf.la does, too, because it
links against the former and thus picked it up.

As I don't know gentoo too well, I'm not certain about who is the
culprit here.  I *believe* libSDL does not contain C++ code, so it
should not have been linked against libstdc++, consequently
/usr/lib/libSDL.la should not reference it.  Did you compile the
installed libSDL yourself?  If not, I guess it would be best if you
filed a bug with the corresponding gentoo package, so it can be fixed
upstream.

If libSDL instead *does* contain C++ code, then instead there probably
should be a (developer) package dependency on the C++ library, I guess.
(I really don't know how gentoo does this stuff, so I'm extrapolating
Debian here, hand-wavingly :)

As a workaround, you could remove the libstdc++ part (not the rest!) in
the dependency_libs line from /usr/lib/libSDL.la, then relink your
package (be sure to recreate /home/eaburns/emf-0.9_1/src/libemf.la as
well!).  Then everything should work, given that libstdc++ really isn't
needed.

Finally, if I may add a completely unrelated hint: there already exists
a package libEMF[1], which may or may not be related to your package.
If it's not, it may prove beneficial to both if they had distinct names.
:-)

Cheers,
Ralf

[1] See http://libemf.sf.net/.  No, I don't have any affiliation with
it, I just happen to have used it before.


___
Bug-libtool mailing list
Bug-libtool@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-libtool


Re: libstdc++

2005-10-27 Thread Ethan A Burns
Hello Ralf,
Thank you for your responce.  Since this computer is not mine, I will 
find out
how SDL was compiled and see if I can fix the problem from there.  If it is 
an issue with the gentoo package, I will cc the list with the result from 
gentoo.

Also thank you for telling me about the conflicting package names, I was
unaware of libEMF and will change the name of my library!

Thanks!
--Ethan--

Hi Ethan,

* Ethan A Burns wrote on Thu, Oct 27, 2005 at 06:14:16PM CEST:

  Sorry, I did not realize I didn't have the list CCed.

No problem at all.  The reminder is also to avoid unpleasant surprises
on your side.  ;-)

 I removed the sdl-config -libs from the configure script with the same
 results.

OK.  It /could/ be that this may actually break things, but it looks
like it doesn't.  (The underlying issue here is that `sdl-config -libs'
just should not output the /usr/lib part, the fact that you are using it
in general is quite alright.)

 I also ran the debug command that you requested the output should be
 attached as a .bz2.

Thanks.  It confirms my suspicion:  The file
/usr/lib/libSDL.la
contains a reference to
//usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.la

and surely /home/eaburns/emf-0.9_1/src/libemf.la does, too, because it
links against the former and thus picked it up.

As I don't know gentoo too well, I'm not certain about who is the
culprit here.  I *believe* libSDL does not contain C++ code, so it
should not have been linked against libstdc++, consequently
/usr/lib/libSDL.la should not reference it.  Did you compile the
installed libSDL yourself?  If not, I guess it would be best if you
filed a bug with the corresponding gentoo package, so it can be fixed
upstream.

If libSDL instead *does* contain C++ code, then instead there probably
should be a (developer) package dependency on the C++ library, I guess.
(I really don't know how gentoo does this stuff, so I'm extrapolating
Debian here, hand-wavingly :)

As a workaround, you could remove the libstdc++ part (not the rest!) in
the dependency_libs line from /usr/lib/libSDL.la, then relink your
package (be sure to recreate /home/eaburns/emf-0.9_1/src/libemf.la as
well!).  Then everything should work, given that libstdc++ really isn't
needed.

Finally, if I may add a completely unrelated hint: there already exists
a package libEMF[1], which may or may not be related to your package.
If it's not, it may prove beneficial to both if they had distinct names.
:-)

Cheers,
Ralf

[1] See http://libemf.sf.net/.  No, I don't have any affiliation with
it, I just happen to have used it before.


___
Bug-libtool mailing list
Bug-libtool@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-libtool


Re: libstdc++

2005-10-26 Thread Ralf Wildenhues
Hi Ethan,

Thanks for your bug report.

* Ethan A Burns wrote on Wed, Oct 26, 2005 at 08:25:08PM CEST:
 I have a library that I programmed in C.  There is no C++ here, 
 however, on my roomate's Gentoo box (Linux 2.6.11.7 i686 AMD
 Athlon(tm) Processor AuthenticAMD GNU/Linux) libtool 1.15.18 seems to
 want libstdc++.so to exist.
 He does not have this library.  I realize a quick fix would be to install the 
 library, however, it is not necessary to link with this (it works fine with
 out it on my FreeBSD box libtool 1.15.14).  I was wondering if this was a bug 
 with the new libtool (I saw other bugs related to libstdc++) or if it was a 
 configuration problem?

Hmm, not that I know of.  But that may be because I don't quite
understand yet what's going wrong in your case.  Please show how you use
libtool in your package, and the link line that fails including its
output?

Cheers,
Ralf


___
Bug-libtool mailing list
Bug-libtool@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-libtool