创建目录
mkdir src inc
inc 中创建文件 test.h
src 中创建文件 test.cpp
#ifndef __TEST_H
#define __TEST_H
int test_log();
#endif
#include<iostream>
#include"test.h"
int test_log()
{
std::cout<<"This is test_log."<<std::endl;
return 0;
}
使用头文件和源文件
添加头文件路径
include_directories(${PROJECT_SOURCE_DIR}/inc)
指定源文件及其位置
set(src_dir ${PROJECT_SOURCE_DIR}/src)
file(GLOB src_codes ${src_dir}/*.cpp)
add_executable(${demo_basename} ${demo} ${src_codes})
总的 cmake 文件
cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
project(hello-world-01 LANGUAGES CXX)
include_directories(${PROJECT_SOURCE_DIR}/inc)
set(src_dir ${PROJECT_SOURCE_DIR}/src)
file(GLOB src_codes ${src_dir}/*.cpp)
set(demo_dir ${PROJECT_SOURCE_DIR}/demo)
file(GLOB demo_codes ${demo_dir}/*.cpp)
foreach(demo ${demo_codes})
string(REGEX MATCH "[^/]+$" demo_file ${demo})
string(REPLACE ".cpp" "" demo_basename ${demo_file})
add_executable(${demo_basename} ${demo} ${src_codes})
endforeach()
修改 cmd_dir.cpp
#include<iostream>
#include<string>
#include "test.h"
int main()
{
std::cout<<"This is cmd_dir."<<std::endl;
test_log();
return 0;
}