CMake报错:add_subdirectory not given a binary directory but the given source directory

简介: 笔记

add_subdirectory命令,可以将指定的文件夹加到build任务列表中。

如果你的目录结构如下:

1.png

image.png

main是主工程的CMake目录,需要添加子目录模块sub1 ,那么语法如下:

默认情况下是添加当前目录的子目录,用法如下:

#只需要传入相对主目录的相对路径`sub1`
add_subdirectory(sub1)

如果还需要依赖外部目录(即不是主目录的子目录),就需要指定绝对路径,如下:

#CMAKE_CURRENT_SOURCE_DIR上当CMake目录
add_subdirectory(../3rdparty ${CMAKE_CURRENT_SOURCE_DIR})

不指定绝对路径就会报如下错误:

CMake Error at CMakeLists.txt:8 (add_subdirectory):
    add_subdirectory not given a binary directory but the given source
    directory "G:/NDKProject/OpenGLES/src/main/cpp/3rdparty/libpng" is not a
    subdirectory of "G:/NDKProject/OpenGLES/src/main/cpp/librenderer".  When
    specifying an out-of-tree source a binary directory must be explicitly
    specified.


目录
相关文章
|
开发工具 git
Git从远程仓库拉取指定的分支
Git从远程仓库拉取指定的分支
5508 0
|
Ubuntu Linux 时序数据库
sudo apt-get update提示E: 仓库 “http://mirrors.aliyun.com/ubuntu eoan Release” 没有 Release 文件。亲试解决办法
将自己亲身解决这个办法进行分享,希望朋友们可以少走弯路。
12768 1
|
5月前
|
机器学习/深度学习 人工智能 编解码
PCB印刷电路板表面缺陷检测数据集(近 3500张图片已标注)| YOLO训练数据集 AI视觉检测
本数据集围绕工业实际需求构建,专注于 PCB 表面典型缺陷识别任务,具有如下特点: 📌 数据规模适中:3500 张高质量图像,兼顾训练效率与模型效果 📌 类别覆盖全面:包含 6 类常见工业缺陷 📌 标注精度高:误差控制在像素级别,满足工业级标准 📌 场景贴近真实:来源于实际生产或仿真工业环境
|
缓存 Ubuntu 编译器
CMake 常见问题及解决办法
CMake 常见问题及解决办法
8375 0
|
Java API C++
【C++ 与Qt 线程】C++ std::thread 与Qt qthread多线程混合编程
【C++ 与Qt 线程】C++ std::thread 与Qt qthread多线程混合编程
1405 1
|
人工智能 Ubuntu 开发工具
【Ubuntu工具】避坑指南:搞坏一台电脑,终于在Ubuntu系统上成功源码安装了 QT WebEngine 5.15.13
【Ubuntu工具】避坑指南:搞坏一台电脑,终于在Ubuntu系统上成功源码安装了 QT WebEngine 5.15.13
1412 0
|
Linux C++
经验分享:C++ error:‘syscall’ was not declared in this scope
经验分享:C++ error:‘syscall’ was not declared in this scope
860 3
|
人工智能
AI一键换衣,阿里Outfit Anyone来了,电商人的福音!
【2月更文挑战第18天】AI一键换衣,阿里Outfit Anyone来了,电商人的福音!
3120 2
AI一键换衣,阿里Outfit Anyone来了,电商人的福音!