【问题标题】:Linking .res file with an Executable (CMake)将 .res 文件与可执行文件 (CMake) 链接
【发布时间】:2021-09-16 14:15:30
【问题描述】:

一段时间以来,我一直在尝试将已编译的 .res 文件与 CMake 链接,我搜索了互联网,但没有太多关于它的信息。 我尝试将其添加到我的 CMakeList.txt

SET(RESOURCE_FILE scac.res)
file(GLOB src_files 
"${RESOURCE_FILE}"
ADD_EXECUTABLE( FOO ${FOO_SRCS} )
TARGET_LINK_LIBRARIES( FOO ${FOO_LIBS} )
SET( FOO_LINKFLAGS ${CMAKE_CURRENT_SOURCE_DIR}/modules/scac-module/scac.res )
SET_TARGET_PROPERTIES( FOO PROPERTIES LINK_FLAGS ${FOO_LINKFLAGS} )
)

.res 文件包含VERSIONINFOICON,CMAKE 编译后不报错,. res 文件也成功编译,没有任何错误,但只是版本信息不会显示在应用程序上 注意:我对cmake没有太多经验,问题可能很简单,也可能很复杂????

感谢您的宝贵时间和帮助。

【问题讨论】:

  • 您是否尝试将 res 文件(尽管它可能需要使用 .rc 扩展名)添加到您的 $FOO_SRCS 中?
  • @Botje 我做了,但什么也没发生,一切都还是一样。

标签: c++ cmake resources versioninfo


【解决方案1】:

6 小时后,问题解决了,只需将"${CMAKE_CURRENT_SOURCE_DIR}/res.rc" 添加到行中

 add_executable(${EXAMPLE_TARGET} ${EXAMPLE_HEADER_FILES} ${EXAMPLE_INLINE_FILES} "examples/${EXAMPLE_SOURCE_FILE}"

终于得到

add_executable(${EXAMPLE_TARGET} ${EXAMPLE_HEADER_FILES} ${EXAMPLE_INLINE_FILES} "examples/${EXAMPLE_SOURCE_FILE}" "${CMAKE_CURRENT_SOURCE_DIR}/resource.rc"

【讨论】:

    猜你喜欢
    • 2010-12-07
    • 2017-02-24
    • 2019-08-20
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    • 2020-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多