Opened 11 years ago

Last modified 11 years ago

#37546 closed defect

doxygen @1.8.3: +wizard fails to build — at Version 4

Reported by: raimue (Rainer Müller) Owned by: cssdev
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: mmoll@…, egall@…
Port: doxygen

Description (last modified by raimue (Rainer Müller))

doxygen @1.8.3 fails to build with the +wizard variant.

From the attached main.log:

:info:build /usr/bin/clang++ -headerpad_max_install_names -arch x86_64 -arch i386 -Xarch_x86_64 -mmacosx-version-min=10.8 -o ../../bin/DoxyWizard.app/Contents/MacOS/DoxyWizard obj/doxywizard.o obj/version.o obj/expert.o obj/wizard.o obj/inputbool.o obj/inputstring.o obj/inputint.o obj/inputstrlist.o obj/moc_doxywizard.o obj/moc_expert.o obj/moc_helplabel.o obj/moc_inputbool.o obj/moc_inputstring.o obj/moc_inputint.o obj/moc_inputstrlist.o obj/moc_wizard.o obj/qrc_doxywizard.o obj/config_lex.o   -F/opt/local/Library/Frameworks -F/opt/local/lib  -F/opt/local/Library/Frameworks -F/opt/local/lib -L/opt/local/lib -framework QtXml -framework QtCore -framework QtGui 
:info:build ld: warning: ld: warning: ld: warning: ignoring file /opt/local/Library/Frameworks/QtCore.framework/QtCore, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/Library/Frameworks/QtCore.framework/QtCoreignoring file /opt/local/Library/Frameworks/QtXml.framework/QtXml, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/Library/Frameworks/QtXml.framework/QtXmlignoring file /opt/local/Library/Frameworks/QtGui.framework/QtGui, file was built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the architecture being linked (i386): /opt/local/Library/Frameworks/QtGui.framework/QtGui
:info:build 
:info:build 
:info:build Undefined symbols for architecture i386:
:info:build   "qDrawShadePanel(QPainter*, QRect const&, QPalette const&, bool, int, QBrush const*)", referenced from:
:info:build       ColorPicker::paintEvent(QPaintEvent*) in wizard.o
:info:build   "qt_message_output(QtMsgType, char const*)", referenced from:
:info:build       QDebug::~QDebug() in doxywizard.o
:info:build   "qRegisterResourceData(int, unsigned char const*, unsigned char const*, unsigned char const*)", referenced from:
:info:build       qInitResources_doxywizard() in qrc_doxywizard.o
:info:build       __GLOBAL__I_a in qrc_doxywizard.o
:info:build   "qUnregisterResourceData(int, unsigned char const*, unsigned char const*, unsigned char const*)", referenced from:
:info:build       qCleanupResources_doxywizard() in qrc_doxywizard.o
:info:build       qCleanupResources_doxywizard__dest_class__::~qCleanupResources_doxywizard__dest_class__() in qrc_doxywizard.o
:info:build   "endl(QTextStream&)", referenced from:
:info:build       Expert::saveTopic(QTextStream&, QDomElement&, QTextCodec*, bool) in expert.o
:info:build       Expert::writeConfig(QTextStream&, bool) in expert.o
:info:build       InputStrList::writeValue(QTextStream&, QTextCodec*) in inputstrlist.o
...

I think the reason is the inclusion of -arch i386 in the compilation above. This argument is at least passed in doxygen-1.8.3/addon/doxywizard/Makefile.doxywizard in CFLAGS/CXXFLAGS. A patch and reinplace should be used to select the arch currently building for only. I tested with the patch from ticket #37522 applied, against qt4-mac @4.8.4_2+quartz on Mac OS X 10.8.2 Mountain Lion.

The previous version doxygen @1.8.1.1_1+wizard did work fine for me. I assume changes by upstream introduced these universal arch selections that break the port now for me.

Change History (5)

Changed 11 years ago by raimue (Rainer Müller)

Attachment: main.log added

comment:1 Changed 11 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

comment:2 Changed 11 years ago by mamoll (Mark Moll)

The file doxygen-1.8.3/addon/doxywizard/Makefile.doxywizard is part of the problem. The architectures are also hard-coded in doxygen-1.8.3/tmake/lib/macosx-intel-c++/tmake.conf. The first file can be regenerated with qmake, but qmake still sets up universal architectures.

comment:3 Changed 11 years ago by cooljeanius (Eric Gallager)

I just successfully installed doxygen with the +wizard variant on Snow Leopard; perhaps it's a clang vs. gcc issue?

comment:4 in reply to:  3 Changed 11 years ago by raimue (Rainer Müller)

Description: modified (diff)

I noticed I did not copy the full lines from the log for the ticket description, that's corrected now.

Note: See TracTickets for help on using tickets.