首页 > 解决方案 > 我想知道为什么 add_execuable 有时可以使用与项目名称不同的名称,而有时则不能

问题描述

我想使用 cmake 来构建我的项目。但是我对 add_execuable 函数有一些疑问。当我使用 add_execuable 构建项目时,不使用项目名称。有一些问题。看起来 cmake 无法理解相对路径。有两个cmakelist.txt。我想知道为什么一个工作。另一个不能工作。

Set(SOURCES ${PROJECT_SOURCE_DIR}/main.cpp
)

# Add an executable
#add_executable(hello main.cpp)
add_executable(hello ${SOURES})

这行不通

Set(SOURCES ${PROJECT_SOURCE_DIR}/main.cpp
)

# Add an executable
add_executable(hello main.cpp)

这可以工作并且有项目名称

# Set the project name
project (hello_cmake)

我的英语太差了,很抱歉=_=

标签: cmake

解决方案


如果它抱怨找不到,main.cpp那么这是您的路径的问题。如果CMakeLists.txt包含语句与该add_executable()语句位于同一目录中,main.cpp那么您应该没有任何问题,因为它看起来与CMakeLists.txt文件相关。

如果路径中有任何空格,那么这也可能导致问题。在这种情况下,您需要使用${PROJECT_SOURCE_DIR}/main.cpp.


推荐阅读