我正在尝试用cmake编译vMime,但是我得到了上面的错误,我正在使用cmake的图形界面,我的makefiles.txt在下面。它配置正确,但不生成
cmake_minimum_required(VERSION 2.8)
PROJECT(CXX)#vmime
enable_language(CXX)
set(VerifyCXX VerifyCXX.cxx)
add_definitions(-DVERIFY_CXX)
set_target_properties(${TARGET} PROPERTIES LINKER_LANGUAGE Cxx)
add_executable(myapp vmime)
install(TARGETS myapp DESTINATION bin)当我被困在点上几天时,我将非常感谢你的帮助。
发布于 2015-06-30 14:47:17
CMake可能无法确定目标myapp的链接器语言,因为目标不包含任何具有可识别扩展名的源文件。
add_executable(myapp vmime)可能会被替换为
add_executable(myapp ${VerifyCXX})也可以使用此命令
set_target_properties(${TARGET} PROPERTIES LINKER_LANGUAGE Cxx) 无法成功,因为${TARGET}是先使用后设置的。应该在add_executable之后调用它
set_target_properties(myapp PROPERTIES LINKER_LANGUAGE CXX)请注意,通常根本不需要它。
发布于 2017-01-20 08:10:56
为了其他人的利益,请确保您没有忽略早期的错误,例如:
找不到源文件: MyFirstSourceFile.cpp
另一种导致CMake给出错误"CMake错误: CMake无法确定目标的链接器语言: myapp“的方法是,如果您错误地将其专门指向不存在的源。
例如:我正在将文件从一个目录移动到另一个目录,并在我的CMakeLists.txt中设置了移动前文件和移动后路径。我的输出窗口不是很高,而且我很快就把注意力放在了“无法确定链接器语言”错误上!
发布于 2017-06-16 09:33:31
我使用基于cmake的clion IDE,我的源文件名为*.cc
project(server)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pthread")
file(GLOB SRC_FILE "main.cc" "listenfd.cc" "socket_util.cc"
"timers.cc" "network.cc" "main_event.cc")
add_executable(server ${server})
set_target_properties(server PROPERTIES LINKER_LANGUAGE CXX)在我改变之后
add_executable(server ${server}) to
add_executable(server "main.cc")然后我解决了它,我真的不知道为什么?经过实验,我发现当使用文件时(GLOB....)就像文件(GLOB "src/main.cc")一样,我必须指定相对路径,然后它才能工作。
https://stackoverflow.com/questions/31130612
复制相似问题