基于QMkae/CMake配置QT生成的exe图标
基于QMkae/CMake配置QT生成的exe图标
前言
项目从QMake迁移到CMake的时候遇到的一些坑,记录下。
原文链接: https://peng1028.cn/archives/cbcdacd5-4177-4bad-9dee-c987310ab255
QMake
配置ICON很简单,有如下两种方法
-
直接在.pro工程里边增加一行代码: RC_ICONS = logo.ico,注意ico的路径
-
新建一个rc文件,内容如下:
IDI_ICON1 ICON DISCARDABLE "Xiaobai.ico" // 注意替换为自己图标所在路径
然后在.pro文件中中增加:
RC_FILE += logo.rc
CMake
CMake配置的话按照网上的资料折腾了很久:
注意下路径:
1、资源文件
新建一个icon.rc文件,内容如下:
IDI_ICON1 ICON DISCARDABLE "logo.ico" //可以将logo替换为你的路径
2、添加文件
3、编译工程
正常的话如下图所示:
4、编译出错
有时使用rc文件作为可执行文件时,会提示错误,fatal error RC1107: invalid usage; use RC /? for Help:
我们需要使用RC程序生成res文件,路径如红框所示:
- 复制 D:\Windows Kits\10\bin\10.0.26100.0\x64到资源管理器打开
- 在文件路径栏打开输入 cmd 打开终端
- 输入RC rc文件路径
- 得到res文件
- 删除qt_add_executable中的icon.rc,然后链接到库
target_link_libraries(InfineonFlashTool PRIVATE# ${CMAKE_CURRENT_SOURCE_DIR}/icon.res
)
- 最终结果也是一样的,图标设置成功!