XX = g++ PROJECT_ROOT= /home/cmhu/vpt_ascend_arm DEPEND_DIR = $(PROJECT_ROOT)/bin SRC_ROOT = $(PROJECT_ROOT)/src TARGET= $(PROJECT_ROOT)/bin/libvpt_ascend.so THIRDPARTY_ROOT = $(PROJECT_ROOT)/3rdparty SPDLOG_ROOT = $(THIRDPARTY_ROOT)/spdlog-1.9.2/release OPENCV_ROOT = $(THIRDPARTY_ROOT)/opencv_4_1 JSON_ROOT = $(THIRDPARTY_ROOT)/jsoncpp-1.9.5/release FFMPEG_ROOT = $(THIRDPARTY_ROOT)/ffmpeg-4.4.4/release RABBITMQ_CLIENT_ROOT = $(THIRDPARTY_ROOT)/rabbitmq-c-0.11.0/release AUTHORITY_DIR = $(THIRDPARTY_ROOT)/atlas_lic-aarch64-20220112/atlas_lic BOOST_ROOT = $(THIRDPARTY_ROOT)/boost_1_81_0/release WEBSOCKETPP_ROOT = $(THIRDPARTY_ROOT)/websocketpp-0.8.2/release/include \ JRTP_ROOT = $(THIRDPARTY_ROOT)/gb28181_3rd/jrtp_export DEFS = -DENABLE_DVPP_INTERFACE -DWITH_FACE_DET_SS -DPOST_USE_RABBITMQ -DUSE_VILLAGE # DEFS = -DENABLE_DVPP_INTERFACE -DUSE_VILLAGE include_dir=-I/usr/local/Ascend/ascend-toolkit/6.3.RC1/aarch64-linux/include \ -I $(SRC_ROOT)/common \ -I $(SPDLOG_ROOT)/include \ -I $(OPENCV_ROOT)/include \ -I $(JSON_ROOT)/include \ -I $(FFMPEG_ROOT)/include \ -I $(RABBITMQ_CLIENT_ROOT)/include \ -I $(AUTHORITY_DIR)/include \ -I $(JRTP_ROOT)/jrtplib/include/jrtplib3 \ -I $(SRC_ROOT)/decoder/gb28181/rtp \ -I $(SRC_ROOT)/decoder/gb28181 \ -I $(WEBSOCKETPP_ROOT) \ -I $(BOOST_ROOT)/include \ LIBS= -L $(SPDLOG_ROOT)/lib -l:libspdlog.a \ -L $(DEPEND_DIR) -lvpt_det_vdec -lsycheck -lface_det_vdec -lhs_tri_process -lhs_truck_process -lphone_motor_det -lhcp_vdec -lmotor_rainshed_vdec -ltraffic_light_vdec -lvehicle_pose_vdec -lroad_seg_vdec -lroad_3clsseg_vdec -lhs_motor_process\ -L $(OPENCV_ROOT)/lib -lopencv_world\ -L $(JSON_ROOT)/lib -l:libjsoncpp.a \ -L $(FFMPEG_ROOT)/lib -l:libavformat.a -l:libavcodec.a -l:libswscale.a -l:libavutil.a -l:libavfilter.a -l:libswresample.a -l:libavdevice.a -l:libx264.a\ -L $(RABBITMQ_CLIENT_ROOT)/lib/aarch64-linux-gnu -l:librabbitmq.a \ -L $(AUTHORITY_DIR)/lib -latlaslic \ -L $(JRTP_ROOT)/jrtplib/lib -l:libjrtp.a \ -L/usr/local/Ascend/ascend-toolkit/6.3.RC1/runtime/lib64 -lacl_dvpp -lascendcl \ -L $(BOOST_ROOT)/lib -lboost_system \ CXXFLAGS= -g -O0 -fPIC $(include_dir) $(LIBS) $(DEFS) -lpthread -lrt -lz -fexceptions -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -fvisibility=hidden -Wall -Wno-deprecated -Wdeprecated-declarations -Wl,-Bsymbolic -ldl SRCS:=$(wildcard $(SRC_ROOT)/ai_platform/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/interface/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/dvpp/*.cpp) \ $(wildcard $(SRC_ROOT)/ai_engine_module/sort/*.cpp) \ $(wildcard $(SRC_ROOT)/ai_engine_module/*.cpp) \ $(wildcard $(SRC_ROOT)/util/*.cpp) \ $(wildcard $(SRC_ROOT)/reprocessing_module/*.cpp) \ $(wildcard $(SRC_ROOT)/reprocessing_module/rbmq/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/gb28181/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/gb28181/rtp/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/gb28181/Message/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/gb28181/tinyxml2/*.cpp) \ $(wildcard $(SRC_ROOT)/decoder/gb28181/websocket/*.cpp) \ OBJS = $(patsubst %.cpp, %.o, $(notdir $(SRCS))) $(TARGET):$(OBJS) rm -f $(TARGET) $(XX) -shared -o $@ $^ $(CXXFLAGS) # rm -f *.o %.o:$(SRC_ROOT)/decoder/dvpp/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/interface/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/ai_platform/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/ai_engine_module/sort/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/ai_engine_module/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/util/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/reprocessing_module/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/reprocessing_module/rbmq/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/gb28181/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/gb28181/rtp/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/gb28181/websocket/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/gb28181/Message/%.cpp $(XX) $(CXXFLAGS) -c $< %.o:$(SRC_ROOT)/decoder/gb28181/tinyxml2/%.cpp $(XX) $(CXXFLAGS) -c $< clean: rm -f *.o $(TARGET) cleano: rm -f *.o