[Flac-dev] Re: non-PIC code in shared libs again

Ben Hines bhines at alumni.ucsd.edu
Sat Feb 15 08:15:06 PST 2003


On Tuesday, February 11, 2003, at 09:51  AM, Matt Zimmerman wrote:

> On Tue, Feb 11, 2003 at 05:14:45PM +0000, Christian Weisgerber wrote:
>
>> Ben Hines <bhines at alumni.ucsd.edu> wrote:
>>
>>> The patch fixed the problem with your libs. However, when linking the
>>> xmms plugin i still get:
>>>
>>> *** Warning: This library needs some functionality provided by 
>>> -lstdc++.
>>
>> This is because of id3lib, which is written in C++.  Mixing C and
>> C++ is problematic.  As far as I understand, the final linking
>> should always be done with the C++ compiler in this case.
>
> Yes, unfortunately, the current release of libtool does not handle this
> correctly.
>
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=128391
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=179735
>

Well, for now I have fixed it in the fink package like so:

--- flac-1.1.0/confgure.in.orig 2003-02-11 08:46:25.000000000 -0800
+++ flac-1.1.0/configure.in     2003-02-11 08:46:34.000000000 -0800
@@ -70,7 +70,7 @@
         dnl There is some confusion over what libraries libid3 needs
         dnl so we must be pessimistic and try all permutations:
         dnl "-lid3" "-lid3 -lstdc++" "-lid3 -lz" "-lid3 -lz -lstdc++"
-       for xtra_stdcpp in "" " -lstdc++" ; do
+       for xtra_stdcpp in "" " " ; do
                 for xtra_z in "" " -lz" ; do
                         if test "x$id3lib_found" = "x" ; then
                                 ac_save_CFLAGS="$CFLAGS"


Works fine. As i said, the -lstdc++ isn't needed on darwin, because we 
have a static C++ library that's already linked into id3. Perhaps you 
could conditionalize that for the darwin platform.

-Ben





More information about the Flac-dev mailing list