Kompilieren von Github-Projekt nulloy
-
Hallo zusammen!
ich bin recht neu und unerfahren beim Kompilieren von größeren Projekten und der Anfang scheint mir sehr kryptisch...
Kurzfassung: Ich bekomme das Projekt von https://github.com/nulloy/nulloy nicht kompiliert als Windows-Anwendung und würde mich über eine Schritt-für-Schritt-Anleitung freuen.Langfassung: Unter Linux Mint läuft das Kompilieren einwandfrei. Mittels mxe.cc habe ich eine Crosscompiling-Umgebung geschaffen. Dort bekomme ich aber nach jeder Änderung an makefiles neue Fehlermeldungen in System-Headern. Scheint also nicht der richtige Weg, aber ich kann gerne nochmal die Schritte nachvollziehbar machen.
Daher also der bis jetzt erfolglose Versuch unter Windows. Ich hoffe die ganzen Ausgaben machen die Toolchain nachvollziehbar, weitere Infos reiche ich gerne nach. Zur Fehlermeldung findet sich gehäuft der Hinweis statt gcc g++ zu benutzen, das macht das makefile aber offenbar schon. Ich bin für jeden Tipp dankbar!Beste Grüße, der lichtheini
Unter Windows 7x64 habe ich folgende (gekürzte) Verzeichnisstruktur:
C:\nulloy |- 7-Zip |- 7z.exe |- cmake |- bin |- gstreamer |- 1.0 |- x86 |-bin |- lib |- mingw482 |- bin |- nulloy-master |- src |- configure.bat |- pkg-config_0.26-1 |- QT4 |- bin |- mkspecs |- taglib.git |- bin |- lib |- taglib
Schritte zum Kompilieren, angelehnt an die README von nulloy:
set QTDIR=C:\nulloy\QT4 set TAGLIB_DIR=C:\nulloy\taglib.git set PKG_CONFIG_PATH=C:\nulloy\gstreamer\1.0\x86\lib\pkgconfig;C:\nulloy\taglib.git\lib\pkgconfig set PATH=C:\nulloy\cmake\bin;C:\nulloy\QT4;C:\nulloy\QT4\bin;C:\nulloy\mingw482;C:\nulloy\mingw482\bin;C:\nulloy\pkg-config_0.26-1\bin;C:\nulloy\taglib.git\bin;C:\nulloy\7-Zip;%PATH% cd C:\nulloy\taglib.git cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DZLIB_INCLUDE_DIR=C:\nulloy\gstreamer\1.0\x86\include -DCMAKE_INSTALL_PREFIX="." mingw32-make mingw32-make install cd C:\nulloy\nulloy-master configure.bat mingw32-make.exe
Fehlermeldung:
g++ -Wl,-s -mthreads -shared -Wl,--out-implib,..\..\..\Plugins\libPluginGStreamer.a -o ..\..\..\Plugins\PluginGStreamer.dll release/common.o release/abstractWaveformBuilder.o release/waveformPeaks.o release/containerGstreamer.o release/playbackEngineGstreamer.o release/waveformBuilderGstreamer.o release/moc_containerGstreamer.o release/moc_playbackEngineGstreamer.o release/moc_waveformBuilderGstreamer.o -L"c:\nulloy\QT4\lib" -LC:/nulloy/gstreamer/1.0/x86/lib -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0 -lintl -lQtGui4 -lQtCore4 -lstdc++ release/common.o:common.cpp:(.eh_frame+0xe7): undefined reference to `__gxx_personality_v0' release/common.o:common.cpp:(.eh_frame$_ZN5QListI7QStringE6appendERKS0_+0x13): undefined reference to `__gxx_personality_v0' C:/nulloy/mingw482/bin/../lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/bin/ld.exe: release/common.o: bad reloc address 0x13 in section `.eh_frame$_ZN5QListI7QStringE6appendERKS0_' collect2.exe: error: ld returned 1 exit status Makefile.pluginGstreamer.Release:89: recipe for target '..\..\..\Plugins\PluginGStreamer.dll' failed mingw32-make.exe[2]: *** [..\..\..\Plugins\PluginGStreamer.dll] Error 1 mingw32-make.exe[2]: Leaving directory 'C:/nulloy/nulloy-master/src/plugins/gstreamer' Makefile.pluginGstreamer:34: recipe for target 'release' failed mingw32-make.exe[1]: *** [release] Error 2 mingw32-make.exe[1]: Leaving directory 'C:/nulloy/nulloy-master/src/plugins/gstreamer' Makefile:78: recipe for target 'sub-src-plugins-gstreamer-pluginGstreamer-pro-make_default-ordered' failed mingw32-make.exe: *** [sub-src-plugins-gstreamer-pluginGstreamer-pro-make_default-ordered] Error 2
Benutzte Pakete:
qt-opensource-windows-x86-mingw482-4.8.6-1.exe 7z1801.exe pkg-config_0.26-1_win32.zip cmake-3.11.0-win64-x64 taglib-1.11.1.tar.gz i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z gstreamer-1.0-devel-x86-1.14.0.1.msi