[MacPorts] #21552: doxygen +wizard +universal (x86_64 i386) fails on Leopard

MacPorts noreply at macports.org
Tue Oct 6 15:20:12 PDT 2009


#21552: doxygen +wizard +universal (x86_64 i386) fails on Leopard
-----------------------------+----------------------------------------------
 Reporter:  td@…             |       Owner:  css@…           
     Type:  defect           |      Status:  new             
 Priority:  Normal           |   Milestone:                  
Component:  ports            |     Version:  1.8.0           
 Keywords:  doxywizard       |        Port:  doxygen         
-----------------------------+----------------------------------------------

Comment(by dweber@…):

 I'm playing around with a sandbox version of doxygen in
 http://trac.macports.org/browser/users/dweber/textproc/doxygen

 It appears that doxygen requires Qt 3.3.x, so the qt4-mac dependency will
 fail.  (Also, it fails to find the qmake binary with a qt4-mac dependency,
 because it's called qmake-mac in the qt4-mac port, so this can be handled
 with a reinplace to change QMAKE=qmake into QMAKE=qmake-mac, see my
 sandbox Portfile for details).  However, even with a qt3 dependency, the
 build fails.  This might be an upstream issue (beyond my ability to fix
 this).  Maybe a qt3-mac dependency would work?

 Furthermore, on my system, even the default build fails (without any
 variants enabled).  This appears to be due to some link errors (might be
 related to the md5 lib?).  In my sandbox version that is working for me,
 the post-patch phase is commented to leave the default link arguments
 alone.  The changes made in the post-patch phase are to a file in:

 {{{
 work/doxygen-1.6.1/tmake/lib/macosx-c++/tmake.conf
 }}}

 The link setting changes are (reasonable?):
 {{{
 37,38c37,38
 < TMAKE_LINK            = c++
 < TMAKE_LINK_SHLIB      = c++
 ---
 > TMAKE_LINK            = /usr/bin/g++-4.0 -L/opt/local/lib
 > TMAKE_LINK_SHLIB      = /usr/bin/g++-4.0
 }}}


 When these link changes are disabled, it will build, destroot, install and
 run OK.  With those link changes disabled, the library dependencies for
 doxygen (and doxytag) are:
 {{{
 work/doxygen-1.6.1/bin/doxygen:
         /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current
 version 7.0.0)
         /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current
 version 7.4.0)
         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 111.1.4)
 }}}


 When the link changes are enabled, the link phase fails because of
 undefined symbols.  These are the gory details on the failure:

 {{{
 gmake[2]: Entering directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 /usr/bin/g++-4.0 -I/opt/local/include -c -pipe -D__FreeBSD__=6 -Wall -W
 -O2 -I../qtools -I../libmd5 -I. -o ../objects/main.o main.cpp
 /usr/bin/g++-4.0 -L/opt/local/lib -Wl,-search_paths_first -o
 ../bin/doxygen ../objects/main.o  -L../lib -ldoxygen -ldoxycfg -lqtools
 -lmd5 -liconv
 Undefined symbols:
   "_MD5SigToString", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
   "_MD5Buffer", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
 ld: symbol(s) not found
 collect2: ld returned 1 exit status
 gmake[2]: *** [../bin/doxygen] Error 1
 gmake[2]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 gmake[1]: *** [all] Error 2
 gmake[1]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 make: *** [all] Error 2
 Error: Target org.macports.build returned: shell command " cd
 "/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1"
 && /usr/bin/make -j8 all " returned error 2
 Command output: gmake[2]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 /opt/local/bin/gmake -f Makefile.doxygen    PERL=/opt/local/bin/perl all
 gmake[2]: Entering directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 /usr/bin/g++-4.0 -I/opt/local/include -c -pipe -D__FreeBSD__=6 -Wall -W
 -O2 -I../qtools -I../libmd5 -I. -o ../objects/main.o main.cpp
 /usr/bin/g++-4.0 -L/opt/local/lib -Wl,-search_paths_first -o
 ../bin/doxygen ../objects/main.o  -L../lib -ldoxygen -ldoxycfg -lqtools
 -lmd5 -liconv
 Undefined symbols:
   "_MD5SigToString", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
   "_MD5Buffer", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
 ld: symbol(s) not found
 collect2: ld returned 1 exit status
 gmake[2]: *** [../bin/doxygen] Error 1
 gmake[2]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 gmake[1]: *** [all] Error 2
 gmake[1]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 make: *** [all] Error 2

 DEBUG: Backtrace: shell command " cd
 "/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1"
 && /usr/bin/make -j8 all " returned error 2
 Command output: gmake[2]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 /opt/local/bin/gmake -f Makefile.doxygen    PERL=/opt/local/bin/perl all
 gmake[2]: Entering directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 /usr/bin/g++-4.0 -I/opt/local/include -c -pipe -D__FreeBSD__=6 -Wall -W
 -O2 -I../qtools -I../libmd5 -I. -o ../objects/main.o main.cpp
 /usr/bin/g++-4.0 -L/opt/local/lib -Wl,-search_paths_first -o
 ../bin/doxygen ../objects/main.o  -L../lib -ldoxygen -ldoxycfg -lqtools
 -lmd5 -liconv
 Undefined symbols:
   "_MD5SigToString", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
   "_MD5Buffer", referenced from:
       MemberDef::setAnchor(char const*)in libdoxygen.a(memberdef.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       convertNameToFile(char const*, bool)in libdoxygen.a(util.o)
       Definition::_docsAlreadyAdded(QCString const&)  in
 libdoxygen.a(definition.o)
       DirDef::getOutputFileBase() const in libdoxygen.a(dirdef.o)
       computeMd5Signature(DotNode*, DotNode::GraphType, GraphOutputFormat,
 bool, bool, bool, QCString&)in libdoxygen.a(dot.o)
       DotGfxHierarchyTable::writeGraph(QTextStream&, char const*) constin
 libdoxygen.a(dot.o)
       MemberGroup::anchor() const in libdoxygen.a(membergroup.o)
 ld: symbol(s) not found
 collect2: ld returned 1 exit status
 gmake[2]: *** [../bin/doxygen] Error 1
 gmake[2]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 gmake[1]: *** [all] Error 2
 gmake[1]: Leaving directory
 `/opt/local/var/macports/build/_Users_dweber_myports_textproc_doxygen/work/doxygen-1.6.1/src'
 make: *** [all] Error 2

     while executing
 "command_exec build"
     (procedure "portbuild::build_main" line 9)
     invoked from within
 "$procedure $targetname"
 Warning: the following items did not execute (for doxygen):
 org.macports.build
 Error: Status 1 encountered during processing.
 }}}

-- 
Ticket URL: <http://trac.macports.org/ticket/21552#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list