我正在尝试将已编译的.res文件与cmake链接,但我似乎无法找到有关如何执行此操作的详细信息。
我最接近的是
SET(RESOURCE_FILE resource.res)
file(GLOB src_files
"src/*.h"
"src/*.cpp"
"${RESOURCE_FILE}"
)
add_executable(exename ${src_files})
然后通过IDE手动链接.res文件(即在visual studio中删除链接器附加依赖项中的.res文件)。这意味着每次更改cmake文件时都必须重置附加依赖项。当然有一个比这更好的方法
原谅我对cmake的经验不足,任何帮助都会受到赞赏。
答案 0 :(得分:3)
默认的lib扩展名有点粘,但你可以这样做:
# ...
ADD_EXECUTABLE( FOO ${FOO_SRCS} )
TARGET_LINK_LIBRARIES( FOO ${FOO_LIBS} )
SET( FOO_LINKFLAGS ${CMAKE_CURRENT_SOURCE_DIR}/foo.res )
SET_TARGET_PROPERTIES( FOO PROPERTIES LINK_FLAGS ${FOO_LINKFLAGS} )
将在MSVC中显示为附加的[链接器]选项(而不是依赖项)。希望有所帮助。
如果定义了其他LINK_FLAGS
,您可能需要先将它们存储在FOO_LINKFLAGS
中,然后添加新的。{/ p>