阅读量:0
在C++中使用CMake来封装动态库有以下几个步骤:
- 创建一个CMakeLists.txt文件,用于描述项目的构建过程,并指定生成动态库的规则。
# CMake 最低版本要求 cmake_minimum_required(VERSION 3.10) # 项目名称 project(mylibrary) # 设置生成动态库 add_library(mylibrary SHARED src/myclass.cpp ) # 指定头文件目录 target_include_directories(mylibrary PUBLIC include )
在上面的示例中,创建了一个名为mylibrary的动态库,其中包含了src目录下的myclass.cpp文件,并指定了include目录作为头文件目录。
- 创建C++源文件,实现需要封装的类或函数。
// src/myclass.cpp #include "myclass.h" void MyClass::hello() { std::cout << "Hello from MyClass!" << std::endl; }
在上面的示例中,实现了一个名为MyClass的类,并在hello函数中输出一条消息。
- 创建头文件,声明需要封装的类或函数。
// include/myclass.h #ifndef MYCLASS_H #define MYCLASS_H #include class MyClass { public: void hello(); }; #endif
在上面的示例中,声明了一个名为MyClass的类,并声明了一个hello函数。
- 编译项目。
在项目根目录下执行以下命令进行项目编译:
mkdir build cd build cmake .. make
编译完成后,将在build目录下生成动态库文件libmylibrary.so。
通过以上步骤,就可以在C++中使用CMake来封装动态库。