使用标题和主电源创建CMakeLists.txt

时间:2017-10-31 23:22:27

标签: makefile cmake header

我将程序分为3个文件夹:build,include和src。

构建是我想要从Makefile创建的所有文件的地方,include包含“file.h”,src包含“file.c”和“main.c”。

我在CMakeLists.txt文件中写了这个:

cmake_minimum_required (VERSION 3.5.1)

project(Listas_interlazadas)

include_directories(${include})


add_executable(ejec
  src/main.c
  src/listas.c
  include/listas.h

)

尽管如此,我相信我应该以某种方式包含src文件夹。另外,如何将所有文件发送到build文件夹?从终端,对吗?

感谢。

1 个答案:

答案 0 :(得分:0)

您的代码需要进行一些小的返工。

  • 命令include_directories必须指向有效路径
  • 仅在头文件未包含在任何源文件中时添加头文件

假设项目的以下结构:

   project
     +--source
     |    +--CMakeLists.txt
     |    +--src
     |    |    +--main.c 
     |    |    +--listas.c 
     |    +--include
     |         +--listas.h     
     +--build

重写了CMakeLists.txt

cmake_minimum_required (VERSION 3.5.1)

project(Listas_interlazadas)

include_directories(include)

add_executable(ejec
  src/main.c
  src/listas.c
)

回到你的问题:

  • 添加来源:您已插入所需的源文件。请参阅add_executable
  • 将源复制到build文件夹:这不是必需的。

要构建项目,你必须运行cmake和make(或在windows上使用nmake)。

步骤:

  1. 打开命令shell
  2. 转到构建文件夹
  3. 运行:cmake ../ source
  4. 运行:make
  5. Some important parts of a CMakeLists.txt