From 889a10e54d833d894f22cd19bc4234c56bfa49ca Mon Sep 17 00:00:00 2001 From: cxh Date: Fri, 14 Nov 2025 10:40:58 +0800 Subject: [PATCH] 1 --- CMakeLists.txt | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 746595f..547b068 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,21 +1,26 @@ cmake_minimum_required(VERSION 3.10) -# 工程名称(随便改) -project(rtsp_server) +# 可配置的项目名称 +set(APP_NAME "video_manager") + +# 可配置的配置文件名 +set(CONFIG_FILE "config.json") + +project(${APP_NAME}) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) add_compile_definitions(GLIB_DISABLE_DEPRECATION_WARNINGS) -# 设置可执行文件输出目录 +# 输出目录 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/../bin) -# 找 GStreamer +# GStreamer find_package(PkgConfig REQUIRED) pkg_check_modules(GSTREAMER REQUIRED gstreamer-1.0) -# 添加头文件目录 +# include 路径 include_directories( ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/third_party/include @@ -23,30 +28,32 @@ include_directories( ${GSTREAMER_INCLUDE_DIRS} ) -# 源码目录 +# 源文件 file(GLOB SRC_FILES src/*.cpp) -# 生成可执行文件(名字和 project 不一定要一样) -add_executable(camera_to_rtsp ${SRC_FILES}) +# 生成可执行文件 +add_executable(${APP_NAME} ${SRC_FILES}) -# 链接库目录 +# lib 路径 link_directories( ${GSTREAMER_LIBRARY_DIRS} ${CMAKE_SOURCE_DIR}/third_party/lib ) # 链接库 -target_link_libraries(camera_to_rtsp +target_link_libraries(${APP_NAME} ${GSTREAMER_LIBRARIES} pthread + mp4v2 + util ${CMAKE_SOURCE_DIR}/third_party/lib/libpaho-mqttpp3.a ${CMAKE_SOURCE_DIR}/third_party/lib/libpaho-mqtt3a.a ${CMAKE_SOURCE_DIR}/third_party/lib/libpaho-mqtt3c.a ) -# 运行时把 config.json 复制到 bin/ 目录 -add_custom_command(TARGET camera_to_rtsp POST_BUILD +# 拷贝配置文件 +add_custom_command(TARGET ${APP_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${CMAKE_SOURCE_DIR}/config.json - $/config.json + ${CMAKE_SOURCE_DIR}/${CONFIG_FILE} + $/${CONFIG_FILE} )