cmake_minimum_required(VERSION 3.5)
|
|
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DGPU -DCUDNN -DOPENCV -g -std=c++11 -W -pthread")
|
set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS} -DGPU -DCUDNN -DOPENCV -g -std=c++11 -W")
|
project(yolo_tracking)
|
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/build)
|
|
set(CMAKE_CXX_STANDARD 11)
|
#set(CMAKE_BUILD_TYPE debug)
|
add_compile_options(-fPIC -g -Wall -Wshadow -Wno-sign-compare -w)
|
#add_definitions(-DDEBUG_ERR -DDEBUG_INFO)
|
#add_definitions(-DDEBUG)
|
#add_definitions(-D_GLIBCXX_USE_CXX11_ABI=0)
|
|
|
file(GLOB_RECURSE CURRENT_HEADERS
|
./*.h
|
./lib/*.h
|
./lib/core/*.h
|
./lib/tracker_tools/*.h
|
./lib/encoder_tools/*.h
|
./lib/detecter_tools/*.h
|
./lib/detecter_tools/extra/*.h
|
./lib/Munkres_assign/*.h
|
./lib/utils/*.h
|
./lib/detecter_tools/*.hpp
|
./lib/detecter_tools/*.cuh
|
./lib/detecter_tools/darknet/*.hpp
|
./lib/detecter_tools/darknet/*.cuh)
|
|
file(GLOB sources
|
#./*.cpp
|
./h_interface.cpp
|
./lib/*.cpp
|
./lib/core/*.cpp
|
./lib/tracker_tools/*.cpp
|
./lib/encoder_tools/*.cpp
|
./lib/detecter_tools/*.cpp
|
./lib/Munkres_assign/*.cpp
|
./lib/utils/*.cpp
|
./lib/detecter_tools/*.cpp
|
./lib/detecter_tools/darknet/*.c
|
./lib/detecter_tools/darknet/*.cpp
|
./lib/detecter_tools/darknet/*.cu)
|
|
|
#foreach(s range ${sources})
|
#message(${s})
|
#endforeach()
|
|
|
source_group("Include" FILES ${CURRENT_HEADERS})
|
source_group("Source" FILES ${sources})
|
|
|
#cudaS
|
find_package(CUDA REQUIRED)
|
|
message("-- CUDA version:$(CUDA_VERSION)")
|
|
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有不同的算力指数,可查看算力表ls
|
ls
|
|
)
|
set(CUDA_NVCC_FLAGS_RELWITHDEBINFO "--device-debug;-lineinfo")
|
#find_package(OpenCV REQUIRED) # 查找系统的默认opencv环境
|
#message(${OpenCV_LIBS})
|
endif()
|
|
|
set(TENSORFLOW_DIR /home/disk1/s_opt/tensorflow/tensorflow-1.14.0)
|
|
link_directories(/usr/local/cuda-10.0/lib64)
|
#link_directories(/usr/local/lib)
|
|
SET(LIBS
|
opencv_core
|
opencv_highgui
|
# opencv_imgcodecs
|
opencv_imgproc
|
#opencv_videoio
|
opencv_video
|
tensorflow_cc
|
tensorflow_framework
|
cudart
|
cublas
|
stdc++fs
|
curand
|
cuda
|
cudnn
|
)
|
|
include_directories(
|
${CMAKE_CURRENT_SOURCE_DIR}
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/bazel-genfiles
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/bazel-bin/tensorflow
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/tensorflow/contrib/makefile/downloads/nsync/public
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/tensorflow/contrib/makefile/downloads/eigen
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/tensorflow/contrib/makefile/downloads/absl
|
/home/disk1/s_opt/tensorflow/tensorflow-1.14.0/tensorflow/contrib/makefile/downloads/protobuf/src
|
)
|
include_directories(/usr/local/cuda/include)
|
include_directories(".")
|
include_directories("./lib")
|
include_directories("./lib/core")
|
include_directories("./lib/detecter_tools")
|
include_directories("./lib/encoder_tools")
|
include_directories("./lib/Munkres_assign")
|
include_directories("./lib/tracker_tools")
|
include_directories("./lib/utils")
|
include_directories("./lib/Munkres_assign/munkres")
|
include_directories("/usr/include")
|
|
link_directories(${TENSORFLOW_DIR}/tensorflow/contrib/makefile/downloads/nsync/builds/default.linux.c++11)
|
link_directories(${TENSORFLOW_DIR}/bazel-bin/tensorflow)
|
#link_directories(/usr/local/lib)
|
link_directories(/usr/local/cuda/lib64)
|
link_directories(/usr/lib/x86_64-linux-gnu/)
|
|
|
cuda_add_library(${PROJECT_NAME} SHARED ${sources} ${CURRENT_HEADERS})
|
|
|
target_link_libraries(${PROJECT_NAME} ${LIBS})
|