源代码
main.cpp
文件如下
#include<stdio.h>
#include"printHelloWorld.h"
int main()
{
print();
return 0;
}
引用了printHelloWorld.h
头文件
void print();
其中print函数的实现在printHelloWorld.cpp
文件中
#include<stdio.h>
#include"printHelloWorld.h"
void print()
{
printf("hello world!\n");
}
以上代码使用多个文件共同实现了简单的helloworld
功能。
我们希望将printHelloWorld.cpp
编译为一个动态链接库,以供main.cpp
主程序调用。
接下来使用CMake完成项目配置,以编译生成一个动态链接库和一个可执行文件。最终将编译结果安装在指定路径。
CMake代码
cmake_minimum_required(VERSION 3.0)
project(example)
add_library(PrintHelloWorld SHARED printHelloWorld.cpp)
add_executable(${PROJECT_NAME} main.cpp)
target_link_libraries(${PROJECT_NAME} PRIVATE PrintHelloWorld)
install(TARGETS ${PROJECT_NAME} PrintHelloWorld
RUNTIME DESTINATION /home/user/demo/install
LIBRARY DESTINATION /usr/lib
ARCHIVE DESTINATION /usr/lib
)
CMake使用步骤
首先进入项目的根目录,然后新建build文件夹
mkdir build
然后进入build文件夹
cd build
运行cmake命令,以完成配置
cmake ..
运行make命令,以完成编译
make
最后将所得文件安装到指定目录
sudo make install
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)