m
suntianyu
2021-07-30 cc6f8a873c7efd28fbbeb7c1c70b28a053586f17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
cmake_minimum_required(VERSION 3.5)
 
project(humanCount)
 
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -O0 -pthread")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden -O0")  # 编译C脚本时调用GPU环境信息
 
message(${CMAKE_CXX_FLAGS})
message(${CMAKE_C_FLAGS})
 
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/build)
set(CMAKE_CXX_STANDARD 14)
 
add_compile_options(-fPIC -ldl -lm -g -Wall  -Wshadow -Wno-sign-compare -w  -pthread)
# FIND_PACKAGE(OpenCV REQUIRED PATHS "/data/disk2/opt/01_opencv/opencv4.5.2") # opencv 如果使用 版本4.5.2
set(OPENCV_DIR /opt/toolkits/opencv)
 
file(GLOB_RECURSE CURRENT_HEADERS
        ./*.h
        ./lib/*.h
        ./lib/core/*.h
        ./lib/utils/*.h
)
 
file(GLOB sources
        ./*.cpp
        ./lib/*.cpp
        ./lib/core/*.cpp
        ./lib/utils/*.cpp
        ./lib/utils/*.cc
)
 
source_group("Include" FILES ${CURRENT_HEADERS})
source_group("Source" FILES ${sources})
 
set(CUDA_Path /usr/local/cuda)
include_directories(${CUDA_Path}/include)
link_directories(${CUDA_Path}/lib64)
 
include_directories(${OPENCV_DIR}/include/opencv4)
link_directories(${OPENCV_DIR}/lib)
#include_directories(/opt/toolkits/protobuf/include)
#link_directories(/opt/toolkits/protobuf/lib)
include_directories("/usr/include/x86_64-linux-gnu/")
link_directories(/usr/lib/x86_64-linux-gnu/)
link_directories(/home/basic/anaconda3/lib/)
 
set(LOG_DIR /opt/toolkits/log4cplus)
include_directories("/usr/include/jsoncpp/")
 
include_directories(
        ${CMAKE_CURRENT_SOURCE_DIR}
)
include_directories(".")
include_directories("./lib")
include_directories("./lib/core")
include_directories("./lib/utils")
 
 
SET(LIBS opencv_core opencv_highgui opencv_imgcodecs opencv_imgproc opencv_videoio opencv_video cublas curand cuda cudnn jsoncpp log4cplus)
 
link_directories(${LOG_DIR}/lib)
include_directories(${LOG_DIR}/include)
 
#add_executable(${PROJECT_NAME} dome.cpp ${sources} ${CURRENT_HEADERS})
add_library(${PROJECT_NAME} SHARED ${sources} ${CURRENT_HEADERS})
target_link_libraries(${PROJECT_NAME} protobuf ${LIBS})