CMake 使用add_library时提示Error

目录结构:

 修改前的CMakeLists.txt:

add_library(SocketConnector SocketConnector.h EthernetHeader.h)

提示:

CMake Error: Cannot determine link language for target "SocketConnector".
CMake Error: CMake can not determine linker language for target: SocketConnector

原因:

当一个目录下仅有头文件(.h*)时,CMake无法推断所应该使用的语言类型,因此需要手动指定编译语言

修改后的CMakeLists.txt:

add_library(SocketConnector SocketConnector.h EthernetHeader.h)
# 仅使用头文件编译时需要指定语言类型
set_target_properties(SocketConnector PROPERTIES LINKER_LANGUAGE CXX)
#
SocketConnector 为target名称
# CXX即C++

 参考链接:

https://stackoverflow.com/questions/5957134

posted @ 2025-01-15 16:33  BlackSnow  阅读(197)  评论(0)    收藏  举报