Vyntek
使用指南

OpenCV SDK:发给客户什么

vyntek-sdk 打包内容、客户侧三行接入、Vyntek::opencv413 稳定入口。

给客户什么

一次 cpack 产出即完整 SDK(本机实测 vyntek-sdk-0.1.0-Linux.tar.gz,33M):

前缀下内容
include/vyntek*/vyntek 公开头
include/opencv4/OpenCV 头(含生成的 opencv_modules.hpp)
lib/libvyntek_{imaging,toolgroup}.sovyntek 双库($ORIGIN rpath,同目录找 opencv_world)
lib/libopencv_world.so.4.13.0客户扩展直链的动态库
lib/cmake/Vyntek/VyntekConfig.cmake(自动 find_dependency(OpenCV))
lib/cmake/opencv4/OpenCVConfig.cmake(同前缀自带,客户无需另装 OpenCV)

客户侧不拉 500M+ 源码、不编 10~20 分钟:解压即用。

打包

cmake --preset ninja-debug-shared -DVYNTEK_WITH_OPENCV=ON -DVYNTEK_BUILD_TESTS=ON
cmake --build --preset ninja-debug-shared
cd build/ninja-debug-shared
cpack -G TGZ   # Linux/macOS
cpack -G ZIP   # Windows(给 Vernon 的包)

客户侧三行

find_package(Vyntek CONFIG REQUIRED)   # VyntekConfig 自动找好同前缀的 OpenCV
target_link_libraries(their_tool PRIVATE Vyntek::toolgroup Vyntek::opencv413)
  • Vyntek::opencv413 是稳定入口:背后是 opencv_world(SHARED 模式)或分模块静态库(VYNTEK_OPENCV_SHARED=OFF),客户代码不感知切换。
  • #include <opencv2/core.hpp> 路径已由 target 带好,无需手写 -I。
  • C API(vyntek_imaging_opencv_*,见 vyntek/capi/vyntek_exports.h)在 Vyntek::imaging 里,C# 与 C++ 客户共用同一套符号。

等价的最小可跑工程见仓库外验证:find_package 配置 0.3 秒完成(对比源码接入的 10~20 分钟),cv::GaussianBlur 直调 + vyntek::imaging::opencv::Available() 双路皆通。

版本对应

VYNTEK_OPENCV_TAG(默认 4.13.0)锁死 OpenCV 版本;find_dependency(OpenCV 4.13.0) 在消费侧二次校验——SDK 与源码构建的版本不可能悄悄错开。

On this page