在之前的目錄下新增2個檔案,testfunc.c和testfunc.h。新增完後整體檔案結構如下:
testfunc.c內容如下:
/*
** testfunc.c
*/#include
#include
"testfunc.h"
void
func
(int data)
testfunc.h內容如下:
/*
** testfunc.h
*/#ifndef _test_func_h_
#define _test_func_h_
void
func
(int data)
;#endif
修改main.c,呼叫testfunc.h裡宣告的函式func():
#include
#include
"testfunc.h"
intmain
(void
)
修改cmakelists.txt,在add_executable的引數裡把testfunc.c加進來
cmake_minimum_required (version 2.8
)project (demo)
add_executable
(main main.c testfunc.c)
然後重新執行cmake生成makefile並執行make,
然後執行重新生成的elf檔案main,
aux_source_directory
(dir var)
第乙個引數dir是指定目錄,第二個引數var是用於存放原始檔列表的變數。
我們在main.c所在目錄下再新增2個檔案,testfunc1.c和testfunc1.h。新增完後整體檔案結構如下
testfunc1.c如下:
/*
** testfunc1.c
*/#include
#include
"testfunc1.h"
void
func1
(int data)
testfunc1.h如下:
/*
** testfunc1.h
*/#ifndef _test_func1_h_
#define _test_func1_h_
void
func1
(int data)
;#endif
再修改main.c,呼叫testfunc1.h裡宣告的函式func1():
#include
#include
"testfunc.h"
#include
"testfunc1.h"
intmain
(void
)
修改cmakelists.txt:使用aux_source_directory把當前目錄下的原始檔存列表存放到變數src_list裡,然後在add_executable裡呼叫src_list(注意呼叫變數時的寫法)
cmake_minimum_required (version 2.8
)project (demo)
aux_source_directory
(. src_list)
add_executable
(main $
)
再次執行cmake和make,並執行main
可以看到執行成功了。
aux_source_directory()也存在弊端,它會把指定目錄下的所有原始檔都加進來,可能會加入一些我們不需要的檔案,此時我們可以使用set命令去新建變數來存放需要的原始檔,如下:
cmake_minimum_required (version 2.8
)project (demo)
set( src_list
./main.c
./testfunc1.c
./testfunc.c)
add_executable
(main $
)
命令
說明示例
set新建變數來存放需要的原始檔
set( src_list ./main.c ./testfunc1.c ./testfunc.c)
aux_source_directory
把當前目錄下的原始檔存列表存放到變數src_list
aux_source_directory(. src_list)
add_executable
把指定目錄下所有的原始檔儲存在乙個變數中
add_executable(main $)
makefile在同一目錄下編譯出多個可執行檔案
library ltpn agent ltpn effect ltpn proc lhiredis ljson ldflags as needed srcs wildcard c objs patsubst c,o,srcs targets srcs c info objs info targets...
python引入同一目錄下的py檔案
注意 python2和python3的包內import語法有區別,下面介紹一下python3的包內import語法 例如在admin.py檔案中要引入dealcode.py檔案 1 在目錄下有 init py檔案 2 在admin.py檔案中加一行 from import dealcode 如果要引...
在同一目錄下Nginx對多個配置檔案的讀取順序問題
nginx做反向 時,可能需要 多個伺服器,這時,有一種可行的方案就是將不同的 伺服器配置在不同的配置檔案中,如 root localhost conf.d pwd mydata nginx conf conf.d root localhost conf.d ls default.conf orde...