当前位置: 首页 > article >正文

首次cmake 多目录构建失败

新建test3目录,新建如下图空目录;前文有4个源码文件,2个h,2个cpp;把前文的cpp文件拷贝到src目录下,把h文件拷贝到include目录下;前文的CMakeLists.txt拷贝到test3目录下;

在src目录新建一个CMakeLists.txt,写一句语句如下图;现在要构建的项目的名称设为mytest3;

 

include目录也添加一个CMakeLists.txt;一行语句如下;

 

doc目录下添加一个文档;

 

根test3目录下的CMakeLists.txt修改为如下;

 

    add_subdirectory(src include),这句看上去是把2个子目录加进来;

prj目录下为空;

 

构建,done;

 

生成内容如下;

 

从VS2015打开看一下,没成功;

因为 add_subdirectory(src include) 这句错了;只把src目录加入了,这里的include可能当成add_subdirectory的第二个参数了,没有把include目录加入;

然后把test3目录下的CMakeLists.txt改为如下;

cmake_minimum_required(VERSION 3.10)
project(mytest3 VERSION 1.0)
add_subdirectory(src)
add_subdirectory(include)

再次构建,出错如下图; 

 

    提示2个 add_executable(mytest3... 冲突了;

然后再把test3下的改为如下;
 

cmake_minimum_required(VERSION 3.10)
project(mytest3 VERSION 1.0)
add_executable(mytest3 src/main.cpp src/add.cpp include/add.h include/num.h)

现在不需要子目录下的CMakeLists.txt,随便改个名字;

构建done了以后,从VS打开如下; 

 

目录的结构没有问题;但是main.cpp里面找不到 #include "add.h" #include "num.h" 这两个;


http://www.kler.cn/news/108439.html

相关文章:

  • 微信小程序 slot 不显示
  • 私有云:【3】NFS存储服务器的安装
  • Linux内核驱动开发的需要掌握的知识点
  • 虚拟化、容器与Docker基本介绍以及安装部署(Docker 基本管理)
  • 前端、HTTP协议(重点)
  • 阿里云企业邮箱基于Spring Boot快速实现发送邮件功能
  • SQLi靶场
  • C语言每日一题(21)删除排序数组中的重复项
  • maven之父子工程版本控制案例实战,及拓展groupId和artifactId的含义
  • 67 内网安全-域横向smbwmi明文或hash传递
  • MacOS将Node.js升级到最新版本
  • 服务器之日常整活
  • Go语言用Resty库编写的音频爬虫代码
  • MatlabR2019b安装教程
  • 《Attention Is All You Need》阅读笔记
  • Hadoop、Hive安装
  • 【Qt6】为什么“转到槽函数“能在没有添加connect的情况下,把一个组件或对象和一个函数关联起来?
  • 力扣labuladong——一刷day12
  • 拿捏面试官,高频接口自动化测试面试题总结(附答案)狂收offer...
  • 是顺流还是逆流?未来物流作业是否将被机器人全面取代?
  • 安装 GMP、NTL、CTMalloc ,编译 OpenFHE
  • matlab将十六进制转换为十进制(hex2dec函数)
  • 公司电脑如何限制安装软件
  • 【网络安全 --- 文件上传靶场练习】文件上传靶场安装以及1-5关闯关思路及技巧,源码分析
  • 基于入侵杂草算法的无人机航迹规划-附代码
  • 左神算法题系列:动态规划机器人走路
  • 设置GIT代理
  • ES6 模块化编程 详解
  • 新一代AI技术,引领医疗智能革新共筑未来医疗生态
  • 红米电脑硬盘剪切