cmake 警告No source or binary directory provided

qq_40162781 2020-08-15 08:04:37
No source or binary directory provided. Both will be assumed to be the
same as the current working directory, but note that this warning will
become a fatal error in future CMake releases.


请问cmake的这个警告是说以后不提供PROJECT_SOURCE_DIR、PROJECT_BINARY_DIR这种变量要自己定义的意思吗?
...全文
11696 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
麋小鹿i 2023-07-10
  • 打赏
  • 举报
回复 1

我是这样解决的

# C编译器环境变量        CMAKE_C_COMPILER        等于 系统环境变量CC
# C++编译器环境变量    CMAKE_CXX_COMPILER    等于 系统环境变量CXX
# 因此,你需要在cmake命令后面加上:
-DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++
# 警告就消失了(其中gcc和g++的路径根据你的系统灵活修改)
EEPI 2023-01-01
  • 打赏
  • 举报
回复

cmake . -B build即可,你需要指定source path等

微积分的微笑 2022-02-18
  • 打赏
  • 举报
回复

我在编译cosma时遇到同样的问题。解决办法是
export CC=/此处是你gcc的bin目录中gcc的路径
export CXX=/此处是你gcc的bin目录中g++的路径
这样操作后上述报错就消失了.

sunxiaohuia 2022-04-12
  • 举报
回复
@微积分的微笑 能否详细说说怎么操作,谢谢
麋小鹿i 2023-07-10
  • 举报
回复
@sunxiaohuia 我是这样解决的 C编译器环境变量 CMAKE_C_COMPILER 等于 系统环境变量CC C++编译器环境变量 CMAKE_CXX_COMPILER 等于 系统环境变量CXX 因此,你需要在cmake命令后面加上: -DCMAKE_C_COMPILER=/usr/bin/gcc -DCMAKE_CXX_COMPILER=/usr/bin/g++ 警告就消失了(其中gcc和g++的路径根据你的系统灵活修改)
ztenv 版主 2020-08-17
  • 打赏
  • 举报
回复 1
PROJECT_SOURCE_DIR、PROJECT_BINARY_DIR:这两个变量还是要在CMakeLists.txt中设置一下,一个是source的目录,一个是二进制目录;不知道你用的是哪个版本,我这里不设置关系也不大,详见:https://blog.csdn.net/lianshaohua/article/details/107980612
midision 2023-02-26
  • 举报
回复
@ztenv 怎么定义呢亲
qybao 2020-08-15
  • 打赏
  • 举报
回复
看英文意思是说,以后这个警告级别的信息要改成致命错误级别了。也就是说该两个环境变量被设想为指向当前工作目录,目前如果它们没有被设定,系统会默认帮你设定,但将来的版本就不会帮你设定了,将来的版本如果发现它们没有被设定,就会报致命错误信息。
qq_40162781 2020-08-15
  • 打赏
  • 举报
回复
引用 1 楼 qybao 的回复:
我目前并不确实是否是这两个变量,看官方文档这两个变量还有project()中的描述并没有给出警告。
内容概要:本文提出了一种基于非合作博弈理论的居民负荷分层调度模型,并结合双层鲸鱼优化算法(Two-level Whale Optimization Algorithm)进行高效求解,模型与算法均通过Matlab代码实现。研究针对电力系统中居民侧用电负荷的复杂调度问题,引入非合作博弈机制刻画各用户之间的利益竞争关系,实现负荷的分层优化分配;同时设计双层优化架构,上层优化资源配置,下层模拟用户自主决策行为,提升了模型的实用性与合理性。通过智能优化算法求解多层级、非凸非线性的博弈模型,有效提高了调度方案的收敛性与全局寻优能力,适用于现代智能电网中的需求侧管理与能源优化场景。; 适合人群:具备电力系统基础理论知识和Matlab编程能力,从事智能电网、能源优化调度、需求侧管理、博弈论应用等方向的科研人员、高校研究生及工程技术人员。; 使用场景及目标:①应用于居民区电力负荷的分层优化调度系统设计与仿真分析;②为非合作博弈在多主体能源系统建模中的应用提供方法论支持;③利用双层鲸鱼算法解决具有嵌套结构的复杂双层优化问题,提升求解效率与调度方案的可行性。; 阅读建议:建议读者结合提供的Matlab代码深入理解模型构建逻辑与算法实现流程,重点关注博弈模型的效用函数设计、纳什均衡求解思路以及双层优化结构的迭代机制,宜配合实际用电数据开展复现实验以验证模型有效性与鲁棒性。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧