cmake - 我想知道为什么 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)
我的英语太差了,很抱歉=_=
解决方案
如果它抱怨找不到,main.cpp
那么这是您的路径的问题。如果CMakeLists.txt
包含语句与该add_executable()
语句位于同一目录中,main.cpp
那么您应该没有任何问题,因为它看起来与CMakeLists.txt
文件相关。
如果路径中有任何空格,那么这也可能导致问题。在这种情况下,您需要使用${PROJECT_SOURCE_DIR}/main.cpp
.
推荐阅读
- c# - Unity WorldToViewPortPoint not giving correct y position
- rspec - Rails form_with (remote: true) 错误
- javascript - 以编程方式跨不同页面显示 vue 组件中的数据
- android-fragments - 片段中的 minifab 浮动操作按钮不可点击
- angularjs - 在网络选项卡和 console.log 中没有显示任何内容(“发布成功”)
- reactjs - “编译失败”React Aseets 文件夹在错误的位置
- android - 通过身份验证从 URL 下载 .xls 文件
- c# - 在实体框架中插入设置为空参数的存储过程
- mysql - 无法获得正确的结果:需要 SQL 查询帮助
- nginx - 如何使用 ingress 在一个不错的域名中公开我的 kubernetes 应用程序?