小编典典

CMAKE自动头文件依赖

linux

我有具有main.c main.h和CMakeLists.txt的示例程序目录

main.h的内容是

#ifndef MAIN_H
#define MAIN_H
int t=3;
int y=2;
#endif

main.c的内容是

#include <main.h>
#include<stdio.h>
int main(){

  printf("%d apple",t);
}

和CMakeLists.txt

PROJECT( test )
AUX_SOURCE_DIRECTORY(. test_SRCS)
include_directories(.)
ADD_EXECUTABLE (main ${test_SRCS})

但是cmake不会在修改头文件时重建main.c。我希望它自动生成头文件依赖项。有可能使用cmake吗?

如果没有,还有其他工具可以做到吗?


阅读 913

收藏
2020-06-07

共1个答案

小编典典

如我的评论中所述,我已经尝试了您的示例,并且一切正常:如果main.h进行了修改,则将main.c重新编译。

我的CMake安装(版本2.8.0)告诉我要添加

cmake_minimum_required(VERSION 2.8)

CMakeLists.txt文件,但这就是我需要的所有调整。

2020-06-07