Ubuntu下通过CMake文件编译CUDA+OpenCV代码操作步骤
来源:互联网 发布:黑客军团第三季 知乎 编辑:程序博客网 时间:2024/05/13 10:46
在 CUDA_Test 工程中,CUDA测试代码之前仅支持在Windows10 + VS2013编译,今天在Ubuntu 14.04下写了一个CMakeLists.txt文件,支持在Linux下也可以通过CMake编译CUDA_Test工程,CMakeLists.txt文件内容如下:
# CMake file for CUDA_Test# 设定依赖的CMake版本CMAKE_MINIMUM_REQUIRED(VERSION 3.2)# 指定项目名称PROJECT(CUDA_Test)# 搜索指定的OpenCV外部依赖库头文件和库文件位置FIND_PACKAGE(OpenCV 2)# 搜索指定的CUDA外部依赖库头文件和库文件位置FIND_PACKAGE(CUDA)# 打印相关信息, CMAKE_CURRENT_SOURCE_DIR指的是当前处理的CMakeLists.txt所在的路径MESSAGE(STATUS "current path: ${CMAKE_CURRENT_SOURCE_DIR}")# 定义用户自定义变量SET(PATH_CPP_FILES ./../../demo/CUDA_Test)#MESSAGE(STATUS "cpp files path: ${PATH_CPP_FILES}")SET(PATH_CU_FILES ./../../demo/CUDA_Test)# 递归查询所有匹配的文件:*.cpp和*.cuFILE(GLOB_RECURSE CPP_LIST ${PATH_CPP_FILES}/*.cpp)FILE(GLOB_RECURSE CU_LIST ${PATH_CU_FILES}/*.cu)#MESSAGE(STATUS "cpp list: ${CPP_LIST}")#MESSAGE(STATUS "cu list: ${CU_LIST}")# 使CMake支持C++11特性SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu++0x")SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x")# 指定CUDA头文件的搜索路径INCLUDE_DIRECTORIES(/usr/local/cuda-8.0/include)# 指定OpenCV头文件搜索路径INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})#MESSAGE(STATUS "opencv include directory: ${OpenCV_INCLUDE_DIRS}")# 使CUDA NVCC 编译器支持C++11特性LIST(APPEND CUDA_NVCC_FLAGS -std=c++11;-O2)LIST(APPEND CUDA_NVCC_FLAGS -Xcompiler;-fPIC)SET(CUDA_PROPAGATE_HOST_FLAGS OFF)LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_50,code=sm_50)LIST(APPEND CUDA_NVCC_FLAGS -gencode arch=compute_60,code=sm_60)# 编译可执行程序,即生成可执行文件CUDA_Test#ADD_EXECUTABLE(CUDA_Test ${CPP_LIST} ${CU_LIST}) # 不包括编译*.cu文件,需要使用CUDA_ADD_EXECUTABLE命令CUDA_ADD_EXECUTABLE(CUDA_Test ${CPP_LIST} ${CU_LIST})# 用来为target添加需要链接的共享库,指定工程所用的依赖库,包括动态库和静态库TARGET_LINK_LIBRARIES(CUDA_Test ${OpenCV_LIBS})#MESSAGE(STATUS "opencv libs: ${OpenCV_LIBS}")MESSAGE(STATUS "**************************************")操作步骤(prj/linux_cmake/ReadMe.txt)如下:
在Linux下通过CMake编译CUDA_Test中的测试代码步骤:1. 将终端定位到CUDA_Test/prj/linux_cmake,依次执行如下命令:$ mkdir build$ cd build$ cmake ..$ make (生成CUDA_Test执行文件)$ ./CUDA_Test2. 对于有需要用OpenCV参与的读取图像的操作,需要先将对应文件中的图像路径修改为Linux支持的路径格式
GitHub: https://github.com/fengbingchun/CUDA_Test
阅读全文
0 0
- Ubuntu下通过CMake文件编译CUDA+OpenCV代码操作步骤
- CMake 配置编译OpenCV+CUDA
- ubuntu 下编译安装cmake、OpenCV
- Ubuntu下OpenCV的安装卸载与CMake编译
- VS2010下 cmake编译opencv
- win10X64 + vs2015通过Cmake编译Opencv
- ubuntu系统下cmake 编译matlab中mex文件
- cmake编译opencv时关于cuda的问题
- 【Opencv】通过CMake编译Opencv,开启ippicv、tbb、ffmpeg功能
- VS下用CMake编译OpenCV程序
- VS下用CMake编译OpenCV程序
- Windows下利用Cmake编译opencv
- ubuntu下安装opencv,cmake出错,解决方法
- ubuntu下编译opencv
- ubuntu下编译Opencv
- Linux 下安装Cmake操作步骤
- Ubuntu下对opencv程序编译方式:cmake和sh脚本
- ubuntu下C,C++,opencv cuda编程
- 利用com.googlecode.libphonenumber解析手机号归属地
- 四大组建之 ContentProvider(一)
- SSL P2698 打包
- ACM 强连通图 Popular Cows
- 机器学习保险行业问答开放数据集: 2. 使用案例
- Ubuntu下通过CMake文件编译CUDA+OpenCV代码操作步骤
- jvm中堆和栈应用小结
- 《统计学习方法》 感知机Python 原始形式实现
- lua编译成动态库
- Android主线程looper是死循环问题
- 疯狂Java笔记之对象及其内存管理
- STM32F103ZE移植STemWin532
- Java:关于接口(interface)详解;接口与抽象类的区别
- 沉浸式状态栏