2016-10-11 3 views
1

Я добавил подмодуль git к моему проекту (по адресу https://github.com/mapbox/mapbox-gl-native).Как запустить Makefile из .pro-файла?

Это уже есть Makefile и в соответствии с проектной документацией на https://github.com/mapbox/mapbox-gl-native/blob/master/platform/qt/README.md мне нужно будет работать make qt-lib скомпилировать библиотеку.

Другими словами, мне нужно указать в файле pro в проекте включения, что у меня есть уже существующий Makefile и вы хотите запустить gnumake на нем с определенной целью.

Возможно ли это?

ответ

3

Может быть с пользовательской цели: http://doc.qt.io/qt-5/qmake-advanced-usage.html#adding-custom-targets

Что-то вроде

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

Hm, кажется, что это CMake я буду использовать так у меня есть файл CMakeLists.txt в каталоге подмодуля, но исполняемый файл cmake как gnumake называется «make»? И как создатель qt найдет путь к этой команде? –

+0

Моя пользовательская цель не запускается и не генерирует сообщений об ошибках. Я включаю его с QMAKE_EXTRA_TARGETS = mapboxgl, и он указан как mapboxgl.target = foo.obj mapboxgl.path = src/mapboxgl mapboxgl.commands = cmake qt-lib. Я не знаю, как qt найдет команду cmake на самом деле. –

+0

для cmake вам нужно выполнить шаги, похожие на использование qmake: 1) запустить cmake для создания Makefile, 2) запустить make в Makefile. Вы можете запустить (1) как команду $$ system() в qmake, т. Е. Когда сам qmake запускается и иметь дополнительную цель для шага make –