2016-10-11 8 views
1

Ich habe meinem Projekt ein Git Submodul hinzugefügt (unter https://github.com/mapbox/mapbox-gl-native).Wie führe ich ein Makefile aus einer .pro-Datei aus?

Es hat bereits ein Makefile und nach der Projektdokumentation bei https://github.com/mapbox/mapbox-gl-native/blob/master/platform/qt/README.md muss ich make qt-lib ausführen, um die Bibliothek zu kompilieren.

Mit anderen Worten, ich muss in der Profildatei im einschließenden Projekt angeben, dass ich ein bereits vorhandenes Makefile habe und gnumake mit einem bestimmten Ziel ausführen möchte.

Ist das möglich?

Antwort

3

Vielleicht mit einem benutzerdefinierten Ziel: http://doc.qt.io/qt-5/qmake-advanced-usage.html#adding-custom-targets

So etwas wie

mapbox.target = mapbox/libmapbox.so 
mapbox.commands = make mapbox/Makefile 
+0

Hm, scheint, wie es Cmake ist ich so habe ich eine CMakeLists.txt Datei im Submodul Verzeichnis, aber ist die ausführbare von cmake wie gnumake "make" genannt? Und wie wird der qt Schöpfer den Pfad dieses Befehls finden? –

+0

Mein benutzerdefiniertes Ziel wird nicht ausgeführt und generiert keine Fehlermeldungen. Ich schließe es mit QMAKE_EXTRA_TARGETS = mapboxgl ein und es wird angegeben als mapboxgl.target = foo.obj mapboxgl.path = src/mapboxgl mapboxgl.commands = cmake qt-lib. Ich habe keine Ahnung, wie qt den cmake Befehl tatsächlich finden würde. –

+0

für cmake müssen Sie Schritte, ähnlich wie bei der Verwendung qmake: 1) ausführen cmake, um ein Makefile zu generieren, 2) ausführen make auf dem Makefile. Sie könnten möglicherweise (1) als $$ system() - Befehl in qmake ausführen, d. H. Wenn qmake selbst ausgeführt wird, und das zusätzliche Ziel für den make-Schritt haben –

Verwandte Themen