On Thu, Feb 14, 2013 at 11:23:24PM +0100, Martin Costabel wrote: > On 14/02/13 17:57, Alexander Hansen wrote: >> On 2/14/13 7:24 AM, Jack Howarth wrote: >>> Thomas, >>> I am seeing the same failure with undefined symbols on fink 10.6 under >>> Xcode 4.2. I believe you >>> need to add the following change which eliminates the linkage failures here. > > I do not believe you when you say you had the same error as the one > reported here by Fabio Diaolio and you fixed it as you claim you did. I > does not make sense. > > The macports bugreport is different, it is in fact the opposite of what > has been reported here. Look closely at the missing symbols. They are > not the same. > > In their case, there was in fact a -L%p/lib missing on the link line. In > our case, this is not missing, and the error message indicates indeed > that the linker picked up Fink's libiconv.dylib (which has > _libiconv_open) and not /usr/lib/libiconv.dylib (which has _iconv_open). > > In our case, the problem was not at the linker stage, but at the > compilation stage, where a wrong iconv.h was picked up. > > [] >>> This hack has been used by MacPorts for the last three years to eliminate >>> the same problem >>> with libiconv symbols. >>> >>> https://trac.macports.org/changeset/57665/trunk/dports/textproc/doxygen/Portfile >>> https://trac.macports.org/ticket/20415 > > Not the same. > >>> Thanks in advance for fixing this. >>> Jack >>> >> >> Seems like a good idea to me. I've added this with a slightly different >> implementation. I also didn't do a rev-up because even without this >> change doxygen built for me and linked to Fink's libiconv. > > Pure voodoo. It is inoffensive (a no-op), so if it contributes to > someone's peace of mind, leave it there.
Martin, On x86_64 10.6 fink, I ran into the following build failure... /usr/bin/make -f Makefile.doxygen PERL=/usr/bin/perl all c++ -c -pipe -D__FreeBSD__=6 -DYY_TYPEDEF_YY_SIZE_T -Dyy_size_t=int -Wall -W -Wno-deprecated-declarations -O2 -I../qtools -I../libmd5 -I. -I/sw/include -o ../ objects/main.o main.cpp c++ -Wl,-search_paths_first -o ../bin/doxygen ../objects/main.o -L../lib -L/sw/lib -ldoxygen -ldoxycfg -lqtools -lmd5 -lpthread -liconv -framework CoreServic es Undefined symbols for architecture x86_64: "_iconv_open", referenced from: _portable_iconv_open in libdoxycfg.a(portable_c.o) (maybe you meant: _portable_iconv_open) "_iconv", referenced from: _portable_iconv in libdoxycfg.a(portable_c.o) (maybe you meant: _portable_iconv_open, _portable_iconv_close , _portable_iconv ) "_iconv_close", referenced from: _portable_iconv_close in libdoxycfg.a(portable_c.o) (maybe you meant: _portable_iconv_close) ld: symbol(s) not found for architecture x86_64 collect2: ld returned 1 exit status make[2]: *** [../bin/doxygen] Error 1 make[1]: *** [all] Error 2 make: *** [all] Error 2 ### execution of make failed, exit code 2 ### execution of /tmp/fink.4Tn8p failed, exit code 2 I initially worked around that by changing doxygen.patch from... @@ -36,7 +36,7 @@ TMAKE_LINK = c++ TMAKE_LINK_SHLIB = c++ -TMAKE_LFLAGS = -Wl,-search_paths_first -arch i386 -arch ppc +TMAKE_LFLAGS = -Wl,-search_paths_first -arch @FINK_ARCH@ TMAKE_LFLAGS_RELEASE = TMAKE_LFLAGS_DEBUG = TMAKE_LFLAGS_SHLIB = -shared to @@ -36,7 +36,7 @@ TMAKE_LINK = c++ TMAKE_LINK_SHLIB = c++ -TMAKE_LFLAGS = -Wl,-search_paths_first -arch i386 -arch ppc +TMAKE_LFLAGS = -arch @FINK_ARCH@ TMAKE_LFLAGS_RELEASE = TMAKE_LFLAGS_DEBUG = TMAKE_LFLAGS_SHLIB = -shared which led me to search for other instances of this failure. I found MacPort's hack which solved the problem without changing the doxygen.patch. Jack > > -- > Martin > >> ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb _______________________________________________ Fink-users mailing list Fink-users@lists.sourceforge.net List archive: http://news.gmane.org/gmane.os.macosx.fink.user Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-users