From 34c52566f51ab60d9f0acd795436582d10240950 Mon Sep 17 00:00:00 2001 From: GuanYuankai Date: Mon, 20 Oct 2025 17:45:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0opencv=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 42 ++++++++++++++++++++++++++++++++++++++++++ docker/Dockerfile | 1 + 2 files changed, 43 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0c4136e..9961080 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,6 +11,9 @@ message(STATUS "Found Boost version: ${Boost_VERSION}") find_package(PahoMqttCpp REQUIRED) find_package(SQLite3 REQUIRED) +find_package(PkgConfig REQUIRED) +pkg_check_modules(GST REQUIRED gstreamer-1.0 gstreamer-app-1.0) + # 在包含 Crow 子目录之前,设置一个 CMake 选项 # 这会告诉 Crow 的构建脚本去使用 Boost 库中包含的 Asio add_subdirectory(src/vendor/crow) @@ -110,3 +113,42 @@ target_link_libraries(edge_proxy PRIVATE # ) +# 1. 定义新的可执行文件 (我们将把代码放在 src/streamer/ 目录下) +# add_executable(edge_streamer +# src/streamer/main.cpp +# src/streamer/StreamManager.cpp +# ) + +# # 2. 为新服务链接所有必需的库 +# target_link_libraries(edge_streamer PRIVATE +# # GStreamer (来自我们新增的 pkg_check_modules) +# ${GST_LIBRARIES} + +# Crow +# nlohmann_json +# PahoMqttCpp::paho-mqttpp3 +# Boost::system +# Boost::thread +# rknn_api +# rknnrt +# pthread +# ssl +# crypto +# ) + +# # 3. 为新服务设置头文件包含路径 +# target_include_directories(edge_streamer PRIVATE +# # 新服务的私有头文件 +# ${CMAKE_CURRENT_SOURCE_DIR}/src/streamer/include + +# ${CMAKE_CURRENT_SOURCE_DIR}/src/vendor + +# # GStreamer 的头文件 +# ${GST_INCLUDE_DIRS} + +# ${Boost_INCLUDE_DIRS} + +# # RKNN C-API 的头文件 (来自我们 Dockerfile 的 /usr/local/include) +# /usr/local/include +# ) + diff --git a/docker/Dockerfile b/docker/Dockerfile index 75f8d9a..e274c87 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -42,6 +42,7 @@ RUN apt-get update && \ gstreamer1.0-x \ gstreamer1.0-alsa \ gstreamer1.0-pulseaudio \ + libopencv-dev \ && \ pip3 install --no-cache-dir onvif_zeep && \ groupadd -r developers && \