[GPU编程一]CMakeLists.txt文件编写

这是用来记录CMakeLists.txt编写的示例代码,方便自己后续查阅。

#设置CMAKE最`在这里插入代码片`低版本
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.3)

#设置项目名称
SET(PROJECT_NAME facedetect_test)

#建立项目
PROJECT(${PROJECT_NAME})

#设置debug/release模式编译。
#set(CMAKE_BUILD_TYPE debug) 
IF(NOT CMAKE_BUILD_TYPE)
 SET(CMAKE_BUILD_TYPE Release)
ENDIF()

# 设置C++编译版本
set(CMAKE_CXX_FLAGS "-std=c++11")

#设置输出库文件路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)


#配置opencv
FIND_PACKAGE(OpenCV REQUIRED)#FIND_PACKAGE要放在设置opencv的OpenCVConfig.cmake文件路径前面
set(OpenCV_DIR /media/everfine/data/zp/gpu/demo/lIB/OPENCV_MT_STA/install)  # 设置opencv的OpenCVConfig.cmake文件路径
INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})

#配置ncnn

# 分别设置ncnn的链接库和头文件
set(NCNN_LIBS /media/everfine/data/zp/gpu/demo/lIB/NCNN_MT_STA/install/lib/ncnn.lib)
set(NCNN_INCLUDE_DIRS /media/everfine/data/zp/gpu/demo/lIB/NCNN_MT_STA/install/include/ncnn)
INCLUDE_DIRECTORIES(${NCNN_INCLUDE_DIRS})

#打印调试信息
MESSAGE(STATUS "Project: ${PROJECT_NAME}")
MESSAGE(STATUS "OpenCV library status:")
MESSAGE(STATUS "version: ${OpenCV_VERSION}")
MESSAGE(STATUS "libraries: ${OpenCV_LIBS}")
MESSAGE(STATUS "include path: ${OpenCV_INCLUDE_DIRS}")
MESSAGE(STATUS "libraries: ${NCNN_LIBS}")
MESSAGE(STATUS "include path: ${NCNN_INCLUDE_DIRS}")
MESSAGE(STATUS "Build type: " ${CMAKE_BUILD_TYPE})

	
#获取代码,在项目中,将所有代码都放在src文件夹中
AUX_SOURCE_DIRECTORY(src DIR_SRCS)
MESSAGE(STATUS "Src file: ${DIR_SRCS}")

#获取头文件,在项目中,将所有头文件都放在include文件夹中
include_directories(${PROJECT_SOURCE_DIR}/include)

#编译可执行程序
ADD_EXECUTABLE(${PROJECT_NAME} ${DIR_SRCS})

#添加链接库
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${OpenCV_LIBS})
TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${NCNN_LIBS})










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
修改CMakeLists.txt文件是在ROS package中进行配置和构建的重要步骤之一。下面是修改CMakeLists.txt文件的一般步骤: 1. 打开CMakeLists.txt文件:在你的ROS package目录中找到CMakeLists.txt文件,并使用文本编辑器打开它。 2. 添加依赖项:如果你的ROS package依赖于其他的ROS package,你需要在CMakeLists.txt文件中添加这些依赖项。你可以使用`find_package()`函数来查找和链接这些依赖项。例如,如果你的package依赖于roscpp和std_msgs,你可以在CMakeLists.txt文件中添加以下代码: ```cmake find_package(catkin REQUIRED COMPONENTS roscpp std_msgs) ``` 3. 设置编译选项:你可以在CMakeLists.txt文件中设置一些编译选项,例如编译标志、编译器选项等。你可以使用`add_compile_options()`函数来设置这些选项。例如,如果你想添加一些编译标志,你可以在CMakeLists.txt文件中添加以下代码: ```cmake add_compile_options(-std=c++11 -Wall -Wextra) ``` 4. 添加可执行文件或库:如果你的ROS package包含可执行文件或库,你需要在CMakeLists.txt文件中添加它们。你可以使用`add_executable()`函数来添加可执行文件,使用`add_library()`函数来添加库。例如,如果你想添加一个名为"my_node"的可执行文件,你可以在CMakeLists.txt文件中添加以下代码: ```cmake add_executable(my_node src/my_node.cpp) target_link_libraries(my_node ${catkin_LIBRARIES}) ``` 5. 添加其他必要的配置:根据你的需求,你可能需要添加其他的配置,例如消息生成、服务生成等。这些配置可以根据你的ROS package的具体需求来进行添加。 6. 保存并关闭文件:完成所有的修改后,保存并关闭CMakeLists.txt文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值