Ant*_*ane 7 dll plugins cmake qt5
在Qt 4项目中,我使用Inno Setup构建了一个Windows安装程序.所需的库(qsqlite.dll,qjpeg4.dll等)包含在脚本中,带有CMake变量,如QT_QSQLITE_PLUGIN_RELEASE或QT_QJPEG_PLUGIN_RELEASE.
例如:setup.iss.in:
[Files]
Source: "myapp.exe"; DestDir: {app}
Source: "${QT_QSQLITE_PLUGIN_RELEASE}"; DestDir: {app}/sqldrivers
Source: "${QT_QJPEG_PLUGIN_RELEASE}"; DestDir: {app}/imageformats
Run Code Online (Sandbox Code Playgroud)
现在项目应该迁移到Qt5.一切正常,但我找不到预先定义的变量来获得这些插件路径的Qt5等价物.当然,我可以对它们进行硬编码,但我正在寻找一种以干净和独立的方式定义它的方法.
sak*_*kra 12
Qt5不再依赖CMake模块文件来查找Qt5安装,而是提供自己的CMake配置文件,该文件将Qt5库设置为导入的CMake目标.要获取Qt模块库文件的实际路径,请查询LOCATION模块的CMake目标或其配置特定变体LOCATION_<Config>版本的属性,例如:
find_package(Qt5Core)
get_target_property(QtCore_location_Release Qt5::Core LOCATION_Release)
find_package(Qt5Widgets)
get_target_property(QtWidgets_location_Release Qt5::Widgets LOCATION_Release)
Run Code Online (Sandbox Code Playgroud)
如果你知道插件的CMake目标名称(我还没有验证过),这个策略也可能适用于Qt插件.
另请参阅Qt5 CMake手册.
| 归档时间: |
|
| 查看次数: |
6493 次 |
| 最近记录: |