Opened 15 years ago
Closed 14 years ago
#21552 closed defect (duplicate)
doxygen +wizard +universal (x86_64 i386) fails on Leopard
Reported by: | td@… | Owned by: | cssdev |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.0 |
Keywords: | doxywizard | Cc: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
Port: | doxygen |
Description
Doxygen 1.6.1 build with wizard and universal (set to x86_64, i386) fails on leopard (not snow)
I'm building this way because i'd like to use java 1.6 which is only distributed in 64bit and use newer libraries within macports in jruby.
DEBUG: Backtrace: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_doxygen/work/doxygen-1.6.1" && /usr/bin/make -j2 all " returned error 2 Command output: Step3::init() in wizard.o Step2::init() in wizard.o Step2::init() in wizard.o Step2::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step4::init() in wizard.o Step1::init() in wizard.o Step4::Step4(Wizard*, QHash<QString, Input*> const&)in wizard.o Step4::Step4(Wizard*, QHash<QString, Input*> const&)in wizard.o Step4::Step4(Wizard*, QHash<QString, Input*> const&)in wizard.o Step4::Step4(Wizard*, QHash<QString, Input*> const&)in wizard.o Step1::Step1(Wizard*, QHash<QString, Input*> const&)in wizard.o Step2::Step2(Wizard*, QHash<QString, Input*> const&)in wizard.o Step2::Step2(Wizard*, QHash<QString, Input*> const&)in wizard.o Step3::Step3(Wizard*, QHash<QString, Input*> const&)in wizard.o Step3::Step3(Wizard*, QHash<QString, Input*> const&)in wizard.o InputBool::setValue(bool) in inputbool.o InputBool::update() in inputbool.o ld: symbol(s) not found for architecture ppc collect2: ld returned 1 exit status lipo: can't open input file: /var/tmp//ccQyEyus.out (No such file or directory) make[2]: *** [../../bin/DoxyWizard.app/Contents/MacOS/DoxyWizard] Error 1 make[1]: *** [all] Error 2 make: *** [all] Error 2 while executing "command_exec build" (procedure "portbuild::build_main" line 9) invoked from within "$procedure $targetname" Error: Status 1 encountered during processing.
Attachments (1)
Change History (7)
Changed 15 years ago by td@…
Attachment: | doxygen.build.debug.txt added |
---|
comment:1 Changed 15 years ago by td@…
forgot to mention the build without +wizard seems to work fine.
comment:2 Changed 15 years ago by mf2k (Frank Schima)
Keywords: | doxygen universal removed |
---|---|
Owner: | changed from macports-tickets@… to css@… |
comment:3 Changed 15 years ago 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.
comment:4 Changed 15 years ago by cssdev
You might need to deactivate libwww and try the build again. Its headers and libs confuse the doxygen build process.
comment:5 Changed 15 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Cc: | mcalhoun@… added |
---|
Cc Me!
comment:6 Changed 14 years ago by jmroot (Joshua Root)
Resolution: | → duplicate |
---|---|
Status: | new → closed |
debug log of build