我决定在整个上午发生一系列令人头疼的事情后,使用Qt Creator进行我的第一个Qt项目可能会比MSVC更好(编译过多的问题)。
我想知道如何通过Qt Creator添加我的外部工具所需的.dlls和.libs。我发现这篇文章Adding external library into Qt Creator project是有道理的。
我需要更多信息,例如......我首先链接dll或libs,在qmake中将dll添加到构建步骤的语法是什么(我假设它接近win32:LIBS + = path / to /Psapi.lib)
谢谢!
答案 0 :(得分:14)
如果您拥有库的源代码,则这是.pro文件,用于从中创建外部库(.dll和.a)或Framework(在Mac OS X上):
TEMPLATE = lib
INCLUDEPATH = <your-include-paths>
HEADERS += <your-headers>
SOURCES += <your-sources>
TARGET = MyLib /* The name of your libary */
/* Win32: To generate a MyLib.dll and libMyLib.a (gcc) or MyLib.lib (MSVC) file */
win32 {
CONFIG += dll
}
/* Just in case you need to generate Mac Frameworks: */
macx {
CONFIG += shared lib_bundle
FRAMEWORK_HEADERS.version = Versions
FRAMEWORK_HEADERS.files += <your library headers>
/* Example:
FRAMEWORK_HEADERS.files += /path/to/your/lib/MyLib.h
*/
FRAMEWORK_HEADERS.path = Headers
QMAKE_BUNDLE_DATA = FRAMEWORK_HEADERS
VERSION = 0.5.0 // a framework version you can define
}
/* your project settings */
/* If you compile on windows */
win32 {
/* If you compile with QtCreator/gcc: */
win32-g++:LIBS += /path/to/your/libMyLib.a
/* IF you compile with MSVC: */
win32-msvc:LIBS += /path/to/your/libMyLib.lib
}
/* If compile on Mac and want to link against a framework */
macx {
LIBS+= -framework MyLib
QMAKE_FLAGS += -F/path/to/MyLib
}
请注意,要将外部库与gcc
一起使用,您需要包含链接信息的libMyLib.a文件。 libMyLib.lib
由MS Visual Studio生成,无法由gcc afaik处理!