对于QBS,我应该在DynamicLibrary{}中设置哪些参数来在构建时安装头和库



我正在将我的Qt库从qmake迁移到qbs,我正在努力寻找一个合适的模板,帮助我了解简化所述库的构建和安装需要哪些参数。

目前,我的一个库的qbs文件如下所示:

import qbs
DynamicLibrary {
name: "qparsingtoolkit";
Depends {name: "cpp"}
Depends {name: "Qt.core"}
files: [
"Headers/qparsingparameters.h",
"Headers/qparsingtoolkit.h",
"Headers/qparsingtoolkit_global.h",
"Sources/qparsingparameters.cpp",
"Sources/qparsingtoolkit.cpp",
]
}

安装相对简单。

我只想把标题放在/usr/include/qconsoledesigner

以及中安装的.so/usr/share/qconsoledesigner

DynamicLibrary {
name: "qparsingtoolkit";
Depends {name: "cpp"}
Depends {name: "Qt.core"}
qbs.installPrefix: "usr"
files: [
"Sources/qparsingparameters.cpp",
"Sources/qparsingtoolkit.cpp",
]
Group {
name: "api_headers"
files: [
"Headers/qparsingparameters.h",
"Headers/qparsingtoolkit.h",
"Headers/qparsingtoolkit_global.h",
]
qbs.install: true
qbs.installDir: "include/qconsoledesigner"
}
Group {
fileTagsFilter: ["dynamiclibrary", "dynamiclibrary_symlink"]
qbs.install: true
qbs.installDir: "share/qconsoledesigner" 
}
}

请注意,目标二进制文件的安装在未来将变得更加简单;参见例如。http://doc-snapshots.qt.io/qbs/qml-qbsconvenienceitems-dynamiclibrary.html#installDir-道具。

普通的"qbs build"安装到build目录中的安装根目录中。要"全局"安装,请在"qbs build"后面加上"sudo qbs install--no build--install root/"。

最新更新