-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
74 lines (59 loc) · 2.41 KB
/
Makefile
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
68
69
70
71
72
73
74
#program name
PROGRAM=ximeaJetsonGPU
#build file
OBJDIR = build
#c++ compiler
CC = g++
CFLAGS = -I . -I /root/opencv-3.3.0/build/include -I /root/opencv_contrib-3.3.0/modules/xphoto/include -I /usr/local/cuda/include -g3 -Wall -c -fmessage-length=0 -std=c++11 -lRTIMULib
CSOURCES := $(wildcard *.cpp)
COBJECTS := $(CSOURCES:%.cpp=$(OBJDIR)/%.o)
#CUDA compiler
NVCC = /usr/local/cuda-8.0/bin/nvcc
CUDAPATH = /usr/local/cuda-8.0
NFLAGS = -ccbin g++ -std=c++11 -m64 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_62,code=compute_62
NSOURCES := $(wildcard *.cu)
NOBJECTS := $(NSOURCES:%.cu=$(OBJDIR)/%.o)
#linker
LINKER = g++
LFLAGS = -lm3api -lopencv_core -lopencv_videoio -lopencv_highgui -lRTIMULib -lopencv_imgproc -lopencv_imgcodecs -lopencv_cudaimgproc -lopencv_cudafilters -lcudart -lopencv_features2d -lopencv_cudaarithm -lopencv_cudalegacy -L/root/opencv-3.3.0/build/lib -L$(CUDAPATH)/lib64 -std=c++11 -lpthread
# colors
Color_Off='\033[0m'
Black='\033[1;30m'
Red='\033[1;31m'
Green='\033[1;32m'
Yellow='\033[1;33m'
Blue='\033[1;34m'
Purple='\033[1;35m'
Cyan='\033[1;36m'
White='\033[1;37m'
all: $(PROGRAM)
$(PROGRAM): $(COBJECTS) $(NOBJECTS)
@$(LINKER) $(COBJECTS) $(NOBJECTS) -o $@ $(LFLAGS)
@echo $(Yellow)"Linking complete!"$(Color_Off)
$(COBJECTS): $(OBJDIR)/%.o : %.cpp
@echo $(Blue)"C++ compiling "$(Purple)$<$(Color_Off)
@$(CC) $(CFLAGS) -c $< -o $@
@echo $(Blue)"C++ compiled "$(Purple)$<$(Blue)" successfully!"$(Color_Off)
$(NOBJECTS): $(OBJDIR)/%.o : %.cu
@echo $(Green)"CUDA compiling "$(Purple)$<$(Color_Off)
@$(NVCC) $(NFLAGS) -c $< -o $@
@echo $(Green)"CUDA compiled "$(Purple)$<$(Green)" successfully!"$(Color_Off)
runX11: $(PROGRAM)
@cat ~nvidia/.Xauthority > ~/.Xauthority
@LD_LIBRARY_PATH=/root/opencv-3.3.0/build/lib DISPLAY=localhost:10.0 ./ximeaJetsonGPU
run: $(PROGRAM)
@cat ~nvidia/.Xauthority > ~/.Xauthority
@LD_LIBRARY_PATH=/root/opencv-3.3.0/build/lib ./ximeaJetsonGPU
runGui: $(PROGRAM)
@rm -f /tmp/*.png
@cat ~nvidia/.Xauthority > ~/.Xauthority
@LD_LIBRARY_PATH=/root/opencv-3.3.0/build/lib DISPLAY=:0 ./ximeaJetsonGPU
runVitrual: $(PROGRAM)
@rm -f /tmp/*.png
@cat ~nvidia/.Xauthority > ~/.Xauthority
@LD_LIBRARY_PATH=/root/opencv-3.3.0/build/lib DISPLAY=:1 ./ximeaJetsonGPU
watch: $(PROGRAM)
@gst-launch-1.0 tcpclientsrc port=4444 host=localhost ! h264parse ! avdec_h264 ! glimagesink
clean:
@rm -f $(PROGRAM) $(COBJECTS) $(NOBJECTS)
@echo $(Cyan)"Cleaning Complete!"$(Color_Off)