account_dir/account.h#include iostream using namespace std; class account { public: account(); ~account(); };account_dir/account.cpp#include account.h account::account() { coutaccount构造endl; } account::~account() { coutaccount析沟endl; }test_account/main.cpp#include account.h #include iostream using namespace std; int main() { account a; coutmain函数调用endl; return 0; }test_account/CMakeLists.txt#6.build_together/CMakeLists.txt # 最低版本要求 cmake_minimum_required(VERSION 3.5) # 项目信息 project(test_account) # 添加动态库 add_library(account SHARED ../account_dir/account.cpp ../account_dir/account.h) # 添加可执行文件 add_executable(test_account ./main.cpp) # 添加头文件 target_include_directories(test_account PUBLIC ../account_dir) # 添加链接库 target_link_libraries(test_account account)也可以单文件这样只修改路径即可
CMake五、动态链接库单CMakeLists.txt版
account_dir/account.h#include iostream using namespace std; class account { public: account(); ~account(); };account_dir/account.cpp#include account.h account::account() { coutaccount构造endl; } account::~account() { coutaccount析沟endl; }test_account/main.cpp#include account.h #include iostream using namespace std; int main() { account a; coutmain函数调用endl; return 0; }test_account/CMakeLists.txt#6.build_together/CMakeLists.txt # 最低版本要求 cmake_minimum_required(VERSION 3.5) # 项目信息 project(test_account) # 添加动态库 add_library(account SHARED ../account_dir/account.cpp ../account_dir/account.h) # 添加可执行文件 add_executable(test_account ./main.cpp) # 添加头文件 target_include_directories(test_account PUBLIC ../account_dir) # 添加链接库 target_link_libraries(test_account account)也可以单文件这样只修改路径即可