Я работаю над проектом в Qt, в котором используется ряд внешних библиотек, и мне интересно, есть ли общий способ сделать источник несколько переносимым между разными машинами.
На данный момент у меня есть различные библиотеки, добавленные в проект через Qt Creator (Добавить библиотеку...), который использует относительные пути в файле .pro. Это, очевидно, не только перестает работать, как только я перемещаю проект, но и не работает на других машинах, если какой-либо из путей к библиотеке изменяется. Использование абсолютных путей решает только часть проблемы, поскольку мне все еще нужно убедиться, что каждая библиотека на каждой машине находится точно по одному и тому же пути.
Чтобы дать вам пример, вот часть беспорядка в моем файле .pro на данный момент:
LIBS += -L"c:/Program Files/Microsoft SDKs/Kinect/v1.7/lib/x86/" -lKinect10
win32 {
INCLUDEPATH += "c:/Program Files/Microsoft SDKs/Kinect/v1.7/inc"
DEPENDPATH += "c:/Program Files/Microsoft SDKs/Kinect/v1.7/inc"
}
LIBS += -ladvapi32 \
-lgdi32
INCLUDEPATH += "$$PWD/../../../../../Libraries/PCL 1.6.0/include/pcl-1.6"
DEPENDPATH += "$$PWD/../../../../../Libraries/PCL 1.6.0/include/pcl-1.6"
INCLUDEPATH += "C:/Libraries/PCL 1.6.0/3rdParty/Boost/include"
DEPENDPATH += "C:/Libraries/PCL 1.6.0/3rdParty/Boost/include"
LIBS += -L"$$PWD/../../../../../Libraries/PCL 1.6.0/3rdParty/Boost/lib/" -llibboost_date_time-vc100-mt-gd-1_49
LIBS += -L"$$PWD/../../../../../Libraries/PCL 1.6.0/lib/" -lpcl_visualization_debug
LIBS += -L"$$PWD/../../../../../Libraries/opencv/build/x86/vc10/lib/" -lopencv_core245
INCLUDEPATH += "$$PWD/../../../../../Libraries/opencv/include"
DEPENDPATH += "$$PWD/../../../../../Libraries/opencv/include"
Как лучше это организовать?