On 2/15/13 2:41 PM, Jack Howarth wrote: > On Fri, Feb 15, 2013 at 03:22:04PM -0500, Hanspeter Niederstrasser wrote: >> On 2/15/2013 3:15 PM, zooloo wrote: >>> Dear Finkers, >>> >>> in the course of fink update-all at this 10.6 machine, I encounter troubles >>> building doxygen: >>> >>> /sw/bin/make -f Makefile.doxygen PERL=/usr/bin/perl all >>> make[2]: Entering directory >>> `/sw/src/fink.build/doxygen-1.8.3.1-1/doxygen-1.8.3.1/src' >>> 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++ -L/sw/lib -Wl,-search_paths_first -o ../bin/doxygen ../objects/main.o >>> -L../lib -L/sw/lib -ldoxygen -ldoxycfg -lqtools -lmd5 -lpthread -liconv >>> -framework CoreServices >>> Undefined symbols: >>> "_MD5Buffer", referenced from: >>> Definition::_docsAlreadyAdded(QCString const&) in >>> libdoxygen.a(definition.o) >>> convertNameToFile(char const*, bool, bool)in libdoxygen.a(util.o) >>> convertNameToFile(char const*, bool, bool)in libdoxygen.a(util.o) >>> MemberDef::setAnchor() in libdoxygen.a(memberdef.o) >>> DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o) >>> computeMd5Signature(DotNode*, DotNode::GraphType, >>> GraphOutputFormat, bool, bool, bool, QCString const&, QCString&)in >>> libdoxygen.a(dot.o) >>> DotGroupCollaboration::writeGraph(FTextStream&, GraphOutputFormat, >>> char const*, char const*, char const*, bool, int) constin >>> libdoxygen.a(dot.o) >>> generateGraphLegend(char const*)in libdoxygen.a(dot.o) >>> DotGfxHierarchyTable::writeGraph(FTextStream&, char const*, char >>> const*) constin libdoxygen.a(dot.o) >>> DotDirDeps::writeGraph(FTextStream&, GraphOutputFormat, char >>> const*, char const*, char const*, bool, int) constin libdoxygen.a(dot.o) >>> MemberGroup::anchor() const in libdoxygen.a(membergroup.o) >> >> zooloo, do you have libwww installed? >> >> Jack, if the answer above is 'yes', then '-lmd5' in that linker line >> needs to be changed to '../lib/libmd5.a' so that doxygen is guaranteed >> to use its own libmd5.a. >> >> This might also have been precipitated by putting -L/%p/lib in front of >> local -L paths (-L../lib) > > Hanspeter, > Isn't it supposed to be common practice for Makefiles to be writen with > hard coded paths to locally built static libs anyway? Resorting to -l* for > such bundled libraries seems sloppy. > Jack > >> >> Hanspeter >
I don't think "common practice" and a handcrafted build system intersect. :-) In this case, I'd argue that we've got a synergy of our having put "-L/sw/lib" at the beginning of the build line where it probably oughtn't be plus upstream's sloppy '-lmd5'. -- Alexander Hansen, Ph.D. Fink User Liaison My package updates: http://finkakh.wordpress.com/ ------------------------------------------------------------------------------ The Go Parallel Website, sponsored by Intel - in partnership with Geeknet, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials, tech docs, whitepapers, evaluation guides, and opinion stories. Check out the most recent posts - join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Fink-beginners mailing list Fink-beginners@lists.sourceforge.net List archive: http://news.gmane.org/gmane.os.apple.fink.beginners Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-beginners