cmake_minimum_required(VERSION 3.5)
|
project(yolo_SDK)
|
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/./build)
|
set(CMAKE_CXX_STANDARD 11)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DGPU -DCUDNN -DOPENMP -march=native -W -pthread")
|
|
add_compile_options(-fPIC -g -Wall -Wshadow -Wno-sign-compare -w)
|
|
#set(TENSORFLOW_DIR /home/disk1/s_opt/tensorflow/tensorflow-1.14.0)
|
set(PYTORCH_DIR /home/disk1/s_opt/03_libtorch/libtorch)
|
set(OPENCV_DIR /home/disk1/s_opt/01_opencv/opencv2.4.13)
|
|
SET(SOURCES
|
|
)
|
|
#cudaS
|
find_package(CUDA REQUIRED)
|
|
message("-- CUDA version:$(CUDA_VERSION)")
|
|
# 设置环境的模型查找,如果CUDA版本大于9,则执行CUDA环境的模型查找
|
if(CUDA_VERSION_MAJOR GREATER 9)
|
message("-- CUDA ${CUDA_VERSION_MAJOR} detected")
|
set(
|
CUDA_NVCC_FLAGS
|
${CUDA_NVCC_FLAGS};
|
-gencode arch=compute_61,code=sm_61 # 不同GPU有不同的算力指数,可查看算力表
|
)
|
set(CUDA_NVCC_FLAGS_RELWITHDEBINFO "--device-debug;-lineinfo")
|
|
#find_package(OpenCV REQUIRED) # 查找系统的默认opencv环境
|
#message(${OpenCV_LIBS})
|
endif()
|
|
include_directories(/home/disk1/s_opt/04_protobuf/protobuf-3.10.0/01_protobuf/include)
|
link_directories(/home/disk1/s_opt/04_protobuf/protobuf-3.10.0/01_protobuf/lib) #动态链接库目录/bazel-bin/tensorflow
|
|
link_directories(
|
/usr/local/lib
|
/usr/local/cuda-10.0/lib64
|
# /usr/lib/x86_64-linux-gnu/
|
# ${CMAKE_SOURCE_DIR}/opencv3.4.8/lib
|
${OPENCV_DIR}/lib
|
./
|
)
|
|
SET(LIBS
|
yolo
|
protobuf
|
torch
|
torch_cuda
|
torch_cpu -Wl,--no-as-needed
|
c10
|
c10_cuda
|
gomp
|
nvToolsExt
|
opencv_core
|
opencv_highgui
|
#opencv_imgcodecs
|
opencv_imgproc
|
#opencv_videoio
|
opencv_video
|
|
cublas
|
stdc++fs #设置-lstdc++fs 新链接器选项,防止std等gcc库调用不到
|
curand
|
cuda
|
cudnn
|
jsoncpp
|
dl
|
m
|
)
|
|
include_directories(
|
${CMAKE_CURRENT_SOURCE_DIR}
|
${PYTORCH_DIR}/include/
|
${PYTORCH_DIR}/include/torch/csrc/api/include
|
${OPENCV_DIR}/include
|
#/home/disk1/s_opt/opencv/opencv3.4.8/include
|
./
|
)
|
|
cuda_add_executable(${PROJECT_NAME}
|
sdk.cpp
|
main.cpp
|
${SOURCES}
|
)
|
|
target_link_libraries(${PROJECT_NAME}
|
${LIBS}
|
)
|