在C++中使用CMake來封裝動態庫有以下幾個步驟:
# 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目錄作為頭文件目錄。
// 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 <iostream>
class MyClass {
public:
void hello();
};
#endif
在上面的示例中,聲明了一個名為MyClass的類,并聲明了一個hello函數。
在項目根目錄下執行以下命令進行項目編譯:
mkdir build
cd build
cmake ..
make
編譯完成后,將在build目錄下生成動態庫文件libmylibrary.so。
通過以上步驟,就可以在C++中使用CMake來封裝動態庫。