Opened 15 years ago
Closed 14 years ago
#22158 closed defect (fixed)
qtscriptgenerator fails to build
Reported by: | shikhar@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.8.1 |
Keywords: | Cc: | sharky@…, eatdespain@…, payam.minoofar@…, bwillers@…, nudecamp@…, duckman@…, clusty1@…, a.vincelli@…, panayotis@…, john@…, bgrupe27, root42, fyodor.vassiley@…, des@…, andy@…, djackan@…, macports@…, michaelld (Michael Dickens) | |
Port: | qtscriptgenerator |
Description
Can't build amarok because qtscriptgenerator build gives error:
---> Computing dependencies for amarok ---> Building qtscriptgenerator Error: Target org.macports.build returned: shell command "cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_qtscriptgenerator/work/qtscriptgenerator-src-0.1.0/qtbindings && export QTDIR=/opt/local/libexec/qt4-mac && PATH=/opt/local/libexec/qt4-mac/bin:/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin qmake && make" returned error 2 Command output: rm -f ../../plugins/script/libqtscript_svg_debug.dylib rm -f ../../plugins/script/libqtscript_svg_debug.1.dylib rm -f ../../plugins/script/libqtscript_svg_debug.1.0.dylib mv -f libqtscript_svg_debug.1.0.0.dylib libqtscript_svg_debug.dylib libqtscript_svg_debug.1.dylib libqtscript_svg_debug.1.0.dylib ../../plugins/script/ cd qtscript_xml/ && make -f Makefile make -f Makefile.Debug /usr/bin/g++-4.2 -c -pipe -g -gdwarf-2 -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -Wall -W -fPIC -DQT_SCRIPT_LIB -DQT_XML_LIB -DQT_CORE_LIB -DQT_SHARED -I/opt/local/libexec/qt4-mac/mkspecs/macx-g++ -I. -I/opt/local/libexec/qt4-mac/lib/QtCore.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtCore -I/opt/local/libexec/qt4-mac/lib/QtXml.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtXml -I/opt/local/libexec/qt4-mac/lib/QtScript.framework/Versions/4/Headers -I/opt/local/libexec/qt4-mac/include/QtScript -I/opt/local/libexec/qt4-mac/include -I. -Idebug -F/opt/local/libexec/qt4-mac/lib -o debug/main.o ../../generated_cpp/com_trolltech_qt_xml/main.cpp In file included from /opt/local/libexec/qt4-mac/include/QtCore/qnamespace.h:45, from /opt/local/libexec/qt4-mac/include/QtCore/qobjectdefs.h:45, from /opt/local/libexec/qt4-mac/include/QtCore/qobject.h:47, from /opt/local/libexec/qt4-mac/include/QtCore/qplugin.h:45, from /opt/local/libexec/qt4-mac/include/QtScript/qscriptextensionplugin.h:45, from /opt/local/libexec/qt4-mac/include/QtScript/QScriptExtensionPlugin:1, from ../../generated_cpp/com_trolltech_qt_xml/main.cpp:1: /opt/local/libexec/qt4-mac/include/QtCore/qglobal.h:315:6: warning: #warning "Support for this version of Mac OS X is still preliminary" rm -f libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.dylib libqtscript_xml_debug.1.dylib libqtscript_xml_debug.1.0.dylib /usr/bin/g++-4.2 -headerpad_max_install_names -arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5 -single_module -dynamiclib -compatibility_version 1.0 -current_version 1.0.0 -install_name libqtscript_xml_debug.1.dylib -o libqtscript_xml_debug.1.0.0.dylib debug/main.o debug/qtscript_QDomAttr.o debug/qtscript_QDomCDATASection.o debug/qtscript_QDomCharacterData.o debug/qtscript_QDomComment.o debug/qtscript_QDomDocument.o debug/qtscript_QDomDocumentFragment.o debug/qtscript_QDomDocumentType.o debug/qtscript_QDomElement.o debug/qtscript_QDomEntity.o debug/qtscript_QDomEntityReference.o debug/qtscript_QDomImplementation.o debug/qtscript_QDomNamedNodeMap.o debug/qtscript_QDomNode.o debug/qtscript_QDomNodeList.o debug/qtscript_QDomNotation.o debug/qtscript_QDomProcessingInstruction.o debug/qtscript_QDomText.o debug/qtscript_QXmlAttributes.o debug/qtscript_QXmlContentHandler.o debug/qtscript_QXmlDTDHandler.o debug/qtscript_QXmlDeclHandler.o debug/qtscript_QXmlDefaultHandler.o debug/qtscript_QXmlEntityResolver.o debug/qtscript_QXmlErrorHandler.o debug/qtscript_QXmlInputSource.o debug/qtscript_QXmlLexicalHandler.o debug/qtscript_QXmlLocator.o debug/qtscript_QXmlParseException.o debug/qtscript_QXmlReader.o debug/qtscript_QXmlSimpleReader.o debug/qtscriptshell_QXmlAttributes.o debug/qtscriptshell_QXmlContentHandler.o debug/qtscriptshell_QXmlDTDHandler.o debug/qtscriptshell_QXmlDeclHandler.o debug/qtscriptshell_QXmlDefaultHandler.o debug/qtscriptshell_QXmlEntityResolver.o debug/qtscriptshell_QXmlErrorHandler.o debug/qtscriptshell_QXmlInputSource.o debug/qtscriptshell_QXmlLexicalHandler.o debug/qtscriptshell_QXmlLocator.o debug/qtscriptshell_QXmlReader.o debug/qtscriptshell_QXmlSimpleReader.o -F/opt/local/libexec/qt4-mac/lib -L/opt/local/libexec/qt4-mac/lib -framework QtScript -L/opt/local/lib -L/opt/local/libexec/qt4-mac/lib -F/opt/local/libexec/qt4-mac/lib -framework QtXml -framework QtCore -lz -lm -framework ApplicationServices ln -s libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.dylib ln -s libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.1.dylib ln -s libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.1.0.dylib rm -f ../../plugins/script/libqtscript_xml_debug.1.0.0.dylib rm -f ../../plugins/script/libqtscript_xml_debug.dylib rm -f ../../plugins/script/libqtscript_xml_debug.1.dylib rm -f ../../plugins/script/libqtscript_xml_debug.1.0.dylib mv -f libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.dylib libqtscript_xml_debug.1.dylib libqtscript_xml_debug.1.0.dylib ../../plugins/script/ cd qtscript_phonon/ && make -f Makefile make -f Makefile.Debug make[2]: *** No rule to make target `../../generated_cpp/com_trolltech_qt_phonon/main.cpp', needed by `debug/main.o'. Stop. make[1]: *** [debug] Error 2 make: *** [sub-qtscript_phonon-make_default] Error 2 Error: The following dependencies failed to build: qtscriptgenerator taglib taglib-extras Error: Status 1 encountered during processing.
I am running Snow Leopard.
Change History (48)
comment:1 Changed 15 years ago by sharky@…
comment:4 Changed 15 years ago by sharky@…
Try adding "use_parallel_build no" to the qtscriptgenerator Portfile.
comment:7 follow-up: 8 Changed 15 years ago by eatdespain@…
the same here
rm -f ../../plugins/script/libqtscript_xml_debug.1.dylib rm -f ../../plugins/script/libqtscript_xml_debug.1.0.dylib mv -f libqtscript_xml_debug.1.0.0.dylib libqtscript_xml_debug.dylib libqtscript_xml_debug.1.dylib libqtscript_xml_debug.1.0.dylib ../../plugins/script/ cd qtscript_phonon/ && /opt/local/libexec/qt4-mac/bin/qmake qtscript_phonon.pro -macx -o Makefile WARNING: Failure to find: ../../generated_cpp/com_trolltech_qt_phonon/main.cpp WARNING: Failure to find: ../../generated_cpp/com_trolltech_qt_phonon/main.cpp cd qtscript_phonon/ && make -f Makefile make -f Makefile.Debug make[2]: *** No rule to make target `../../generated_cpp/com_trolltech_qt_phonon/main.cpp', needed by `debug/main.o'. Stop. make[1]: *** [debug] Error 2 make: *** [sub-qtscript_phonon-make_default] Error 2 while executing "$procedure $targetname"
That was compiling Amarok as well.
I found the following:
http://code.google.com/p/qtscriptgenerator/issues/detail?id=3
http://code.google.com/p/qtscriptgenerator/issues/detail?id=39
but I haven't made it working yet, I do not know what I am missing in the build.
thanks
comment:8 Changed 15 years ago by tonyp23@…
I have the same error as well. I tried the include everything patch and it didn't solve the problem. The only way I could get it to complete was by using this solution:
http://bugs.gentoo.org/show_bug.cgi?id=262256#c11
I don't know how this will affect things down the road.
comment:9 Changed 15 years ago by eatdespain@…
Hi,
then doing this
"adding the full paths of the phonon includes in qtscript_masterinclude.h should fix the phonon issue"
You fix it??
Would it be possible to drop the piece of code you modify for us, please?
Thanks very much
comment:13 Changed 15 years ago by eatdespain@…
Here it goes:
Edit:
qtscriptgenerator-src-0.1.0/generator/qtscript_masterinclude.h
Remove
-#ifndef QT_NO_PHONON -# include <phonon/phonon> -#endif
Add (if not there)
+#include "phonon/abstractaudiooutput.h" +#include "phonon/abstractmediastream.h" +#include "phonon/abstractvideooutput.h" +#include "phonon/addoninterface.h" +#include "phonon/audiooutput.h" +#include "phonon/audiooutputinterface.h" +#include "phonon/backendcapabilities.h" +#include "phonon/backendinterface.h" +#include "phonon/effect.h" +#include "phonon/effectinterface.h" +#include "phonon/effectparameter.h" +#include "phonon/effectwidget.h" +#include "phonon/mediacontroller.h" +#include "phonon/medianode.h" +#include "phonon/mediaobject.h" +#include "phonon/mediaobjectinterface.h" +#include "phonon/mediasource.h" +#include "phonon/objectdescription.h" +#include "phonon/objectdescriptionmodel.h" +#include "phonon/path.h" +#include "phonon/phonondefs.h" +#include "phonon/phononnamespace.h" +#include "phonon/platformplugin.h" +#include "phonon/seekslider.h" +#include "phonon/streaminterface.h" +#include "phonon/videoplayer.h" +#include "phonon/videowidget.h" +#include "phonon/videowidgetinterface.h" +#include "phonon/volumefadereffect.h" +#include "phonon/volumefaderinterface.h" +#include "phonon/volumeslider.h" #include "../qtbindings/qtscript_core/qtscriptconcurrent.h"
edit : qtscriptgenerator-src-0.1.0/generator/generator.qrc
Remove
-<file alias="typesystem_phonon.txt">typesystem_phonon.xml</file> - qtscript_phonon \
And the code should be compiled in full but without phonon which can bring consequences (unknown for me so far). And for the date of this post, Amarok still fails on SnowLeopard, The amarok.app folder is not compiled neither copied as you can follow at the following:
http://trac.macports.org/ticket/22144 (linking tickets because most people try to get a amarok compiled)
Thanks
comment:14 Changed 15 years ago by eatdespain@…
Apologies.
Please, remove the "+" and "-" from the code. I took it from the original post in gentoo
Thanks
comment:16 Changed 15 years ago by bwillers@…
I've tried the changes to generator.qrc and qtscript_masterinclude.h you mentioned, but then I get the following errors in building qtscriptgenerator:
Command output: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AudioOutputDevice_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_MediaSource_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_Path_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_VolumeFaderEffect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_BackendCapabilities_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_EffectParameter_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractMediaStream_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_VolumeSlider_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AudioOutput_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractAddon_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractEffect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_Effect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o ld: symbol(s) not found
Any suggestions?
Thanks
comment:17 Changed 15 years ago by eatdespain@…
Can you show us in full the content of both file in your system?
Can you also double-check you haven't got the macports in 2 different directories within /opt? (I made that mistake couple of days ago, I am new to macports...)
Thanks
comment:18 follow-up: 20 Changed 15 years ago by bwillers@…
It's only in one directory. Its essentially a fresh machine (Snow Leopard). I'm new to macports too, this is my first mac after switching my time between Gentoo and a Windows machine :)
generator.qrc:
<!DOCTYPE RCC><RCC version="1.0"> <qresource prefix="/trolltech/generator/"> <file alias="typesystem_core.txt">typesystem_core.xml</file> <file alias="typesystem_gui.txt">typesystem_gui.xml</file> <file alias="typesystem_sql.txt">typesystem_sql.xml</file> <file alias="typesystem_opengl.txt">typesystem_opengl.xml</file> <file alias="typesystem_svg.txt">typesystem_svg.xml</file> <file alias="typesystem_network.txt">typesystem_network.xml</file> <file alias="typesystem_xml.txt">typesystem_xml.xml</file> <file alias="typesystem_webkit.txt">typesystem_webkit.xml</file> <file alias="typesystem_xmlpatterns.txt">typesystem_xmlpatterns.xml</file> <file>parser/rpp/pp-qt-configuration</file> </qresource> </RCC>
qtscript_masterinclude.h is over a thousand lines long, so I'm just throwing in the includes at the start, which is the only bit that's been edited. If you really want the full content let me know.
#define QT_NO_STL #include <QtCore/QtCore> #include <QtGui/QtGui> #include <QtNetwork/QtNetwork> #include <QtSql/QtSql> #include <QtSvg/QtSvg> #include <QtXml/QtXml> #include <QtUiTools/QtUiTools> #ifndef QT_NO_XMLPATTERNS # include <QtXmlPatterns/QtXmlPatterns> #endif #ifndef QT_NO_WEBKIT # include <QtWebKit/QtWebKit> #endif // #ifndef QT_NO_PHONON // # include <phonon/phonon> // #endif #include "phonon/abstractaudiooutput.h" #include "phonon/abstractmediastream.h" #include "phonon/abstractvideooutput.h" #include "phonon/addoninterface.h" #include "phonon/audiooutput.h" #include "phonon/audiooutputinterface.h" #include "phonon/backendcapabilities.h" #include "phonon/backendinterface.h" #include "phonon/effect.h" #include "phonon/effectinterface.h" #include "phonon/effectparameter.h" #include "phonon/effectwidget.h" #include "phonon/mediacontroller.h" #include "phonon/medianode.h" #include "phonon/mediaobject.h" #include "phonon/mediaobjectinterface.h" #include "phonon/mediasource.h" #include "phonon/objectdescription.h" #include "phonon/objectdescriptionmodel.h" #include "phonon/path.h" #include "phonon/phonondefs.h" #include "phonon/phononnamespace.h" #include "phonon/platformplugin.h" #include "phonon/seekslider.h" #include "phonon/streaminterface.h" #include "phonon/videoplayer.h" #include "phonon/videowidget.h" #include "phonon/videowidgetinterface.h" #include "phonon/volumefadereffect.h" #include "phonon/volumefaderinterface.h" #include "phonon/volumeslider.h" #include "../qtbindings/qtscript_core/qtscriptconcurrent.h" #ifndef QT_NO_OPENGL #define GL_ACCUM 0x0100 #define GL_LOAD 0x0101 #define GL_RETURN 0x0102 #define GL_MULT 0x0103 #define GL_ADD 0x0104 /* AlphaFunction */
Which is followed by a couple of hundred lines of defining various GL bits.
comment:20 follow-up: 21 Changed 15 years ago by nudecamp@…
thats exactly how i changed the generator but i still have the same "qtscript_create_AudioOutputDevice_class(QScriptEngine*)", referenced from" errors like above... before changing the files i got exactly the same errors like started/stated above by shikhar.
comment:21 Changed 15 years ago by jord.swart@…
Replying to nudecamp@…:
thats exactly how i changed the generator but i still have the same "qtscript_create_AudioOutputDevice_class(QScriptEngine*)", referenced from" errors like above... before changing the files i got exactly the same errors like started/stated above by shikhar.
I can confirm this, although the total output is smaller. I thought it was related by some old objects getting linked with the new configuration (from the patch above) and then failing. So I executed a "make clean" in the generator directory.
Long story short: that didn't work.
For completeness sake this is the error I get when trying to compile the PATCHED version:
Command output: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AudioOutputDevice_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_MediaSource_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_Path_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_VolumeFaderEffect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_BackendCapabilities_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_EffectParameter_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractMediaStream_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_VolumeSlider_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AudioOutput_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractAddon_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_AbstractEffect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o "qtscript_create_Effect_class(QScriptEngine*)", referenced from: qtscript_com_trolltech_qt_phonon_class_functions in main.o ld: symbol(s) not found collect2: ld returned 1 exit status make[2]: *** [../../plugins/script/libqtscript_phonon_debug.1.0.0.dylib] Error 1 make[1]: *** [debug] Error 2 make: *** [sub-qtscript_phonon-make_default] Error 2
comment:24 follow-up: 26 Changed 15 years ago by jord.swart@…
This is NOT A SOLUTION, but just a little hack that helped me install Amarok. If you follow this you will end up with a qtscriptgenerator that does not have all its bindings correctly installed. I have no clue what the impact of such a situation will be!
Anyhow, for the daring here it comes. Go to your ports directory:
cd /opt/local/var/macports/sources/rsync.macports.org/release/ports/devel/qtscriptgenerator/
Open the Portfile with an editor
sudo vi Portfile
And change the following line (which is the second qmake && make combo you will find in the file):
system "cd ${worksrcpath}/${dir} && export QTDIR=${qtdir} && PATH=${qtdir}/bin:$env(PATH) qmake && make"
To
system "cd ${worksrcpath}/${dir} && export QTDIR=${qtdir} && PATH=${qtdir}/bin:$env(PATH) qmake && make -i"
This will make sure that the make process will IGNORE the errors. So qtscriptgenerator actually gets installed but it is not correct!
Did I mention that this in NOT A SOLUTION? I guess I did now.
However, I did install Amarok afterwards and that seems to be working (I did need to change the amarok Portfile as well though. See above for the link).
comment:26 Changed 15 years ago by knightr@…
I was having this same problem with qtscriptgenerator while trying to install amarok.
To get it to compile, I had to use qt4-kde rather than qt4-mac.
Since qt4_mac is the default, I edited it out of the portfile.
First I installed qt4-kde with
port install qt4-kde
Then I went to the file that jord.swart pointed out:
cd /opt/local/var/macports/sources/rsync.macports.org/release/ports/devel/qtscriptgenerator/
Open the Portfile with an editor
sudo vi Portfile
Then change the line that contains both qt4-kde and qt4-mac from:
set qt_variant { qt4-kde qt4-mac }
To this:
set qt_variant { qt4-kde }
Then compile:
port install qtscriptgenerator
I did this and the error messages were gone! Now on to amarok...
comment:32 Changed 15 years ago by sharky@…
qt4-kde is gone. It was an obsolete version of qt4 with some custome patches.
The root cause for this #22119, namely that the phonon headers are not installed properly.
comment:37 follow-up: 38 Changed 15 years ago by andy@…
I managed to get qtscriptgenerator to build by using the patch here: http://code.google.com/p/qtscriptgenerator/issues/detail?id=39#c4 (comment number 4)
comment:38 Changed 15 years ago by payam.minoofar@…
Replying to andy@…:
I managed to get qtscriptgenerator to build by using the patch here: http://code.google.com/p/qtscriptgenerator/issues/detail?id=39#c4 (comment number 4)
Pardon my ignorance. Where do I put the patch file? Or, do I need to paste the contents into the Portfile?
comment:39 Changed 15 years ago by andy@…
The easiest way to workaround (until an updated Portfile is released) is:
sudo port clean qtscriptgenerator sudo port extract qtscriptgenerator cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_qtscriptgenerator/work/qtscriptgenerator-src-0.1.0/ sudo patch -p1 < include_everything.patch sudo port install qtscriptgenerator
comment:41 Changed 15 years ago by sandman1687@…
The script did not change the error on my fresh Snow Leopard install.
comment:42 Changed 15 years ago by mf2k (Frank Schima)
Cc: | djackan@… added |
---|
Cc reporter of dup #23745.
comment:44 Changed 15 years ago by ryandesign (Ryan Carsten Schmidt)
qtscriptgenerator built fine for me today on Snow Leopard with parallel building without any patches.
comment:45 Changed 15 years ago by payam.minoofar@…
I haven't had any problems building universal binaries of qtscriptgenerator since my travails tow months ago. it might be safe to close the bug.
comment:46 Changed 15 years ago by payam.minoofar@…
Well, before you close this ticket, investigate whether ticket 23716 is related.
comment:48 Changed 14 years ago by michaelld (Michael Dickens)
Resolution: | → fixed |
---|---|
Status: | new → closed |
I am wondering whether this isn't a side effect of parallel builds, as I built qtscriptgenerator just fine on Snow Leopard.