Linux CMake
约 287 字小于 1 分钟
2024-11-04
警告
- demo只提供部分功能展示并不能完全展示所有功能,如有特殊功能需要自行开发
- 运行demo需要自行配置include路径,运行时缺少的dll文件需要自行拷贝到程序运行目录
- 需要熟悉CMake
创建目录结构
创建项目,将SDK目录下的include/ lib/ 目录拷贝到项目目录
创建demo目录,并在目录下创建CMakeLists.txt SDKTest.cpp文件(可根据自己项目创建不同目录跟文件)
编写CMakeLists.txt
cmake_minimum_required(VERSION 3.4.1)
set(TARGET_NAME SDKTest)
message("configure ${TARGET_NAME}")
# +++++++ setting +++++++
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -pthread")
# ############
# ### SDK ####
# ############
set(SDK_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../include")
set(SDK_LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../lib")
include_directories(${SDK_INCLUDE_DIR})
link_directories(${SDK_LIB_DIR})
if(WIN32)
set(APP_PREFIX .exe)
set(SDK_LIB SynexensSDK)
elseif(UNIX)
set(APP_PREFIX)
set(SDK_LIB csreconstruction2.0 SynexensSDK)
endif()
add_executable(${TARGET_NAME} SDKTest.cpp)
target_link_libraries(${TARGET_NAME} PRIVATE ${SDK_LIB})
set_target_properties(${TARGET_NAME} PROPERTIES DEBUG_POSTFIX "_d")
创建编译目录并编译
进入到demo目录,也就是CMakeLists.txt所在目录
mkdir build
cd build
cmake .. && make
运行项目
将项目目录下lib/文件夹下的so库安装到/usr/lib/目录下,或者执行
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:so库所在位置
后在运行编译后的程序。