新建test2文件夹,将test1(参考linux c文件生成so文件并调用示例)文件夹中的libadd.so,add.h,main.c按如下结构放置于test2文件夹中:
luo@luo-desktop:~/test2$ tree . ├── add │ ├── include │ │ └── add.h │ └── lib │ └── libadd.so └── main.c2. 编写CMakeLists.txt文件
新建CMakeLists.txt文件,源码如下:
cmake_minimum_required(VERSION 3.5) project(test) include_directories(./add/include) # main.c中头文件所在目录 link_directories(./add/lib) # libadd.so文件所在路径 add_executable(main main.c) # 生存可执行文件main target_link_libraries(main add) # 链接main文件和libadd.so文件3. 开始编译文件
新建build文件夹,生成的文件都放在该文件夹中统一管理:
luo@luo-desktop:~/test2$ mkdir build && cd build luo@luo-desktop:~/test2/build$ cmake .. luo@luo-desktop:~/test2/build$ make luo@luo-desktop:~/test2/build$ ls CMakeCache.txt CMakeFiles cmake_install.cmake main Makefile
上面指令不报错的话会生成main可执行文件,测试main:
luo@luo-desktop:~/test2/build$ ./main hello world 3
测试成功。



