在 vcpkg.json 我有
{
"dependencies": [ "fmt", "opencv4"]
}
当我在 qtcreator 上打开相应的 cmake 项目时,查看 General Messages 选项卡,我看到
[cmake] Running /Users/user/Qt/Tools/CMake/CMake.app/Contents/bin/cmake -S /Users/user/2024/Projecs/opencv2 -B /Users/user/2024/Projecs/opencv2/build in /Users/user/2024/Projecs/opencv2/build.
[cmake] -- Running vcpkg install
[cmake] Detecting compiler hash for triplet arm64-osx...
[cmake] The following packages will be built and installed:
[cmake] * flatbuffers:[email protected]#1
[cmake] fmt:[email protected]
[cmake] * libjpeg-turbo:[email protected]
[cmake] * liblzma:[email protected]
[cmake] * libpng:[email protected]
[cmake] * libwebp[core,libwebpmux,nearlossless,simd]:[email protected]
[cmake] opencv4[core,default-features,dnn,jpeg,png,quirc,tiff,webp]:[email protected]#12
[cmake] * protobuf:[email protected]
[cmake] * quirc:[email protected]#3
[cmake] * tiff[core,jpeg,lzma,zip]:[email protected]#1
[cmake] * vcpkg-cmake:arm64-osx@2023-05-04
[cmake] * vcpkg-cmake-config:arm64-osx@2022-02-06#1
[cmake] * vcpkg-get-python-packages:arm64-osx@2023-07-28
[cmake] * zlib:[email protected]
[cmake] Additional packages (*) will be modified to complete this operation.
看来会安装一些opencv模块
opencv4[core,default-features,dnn,jpeg,png,quirc,tiff,webp]
不过好像这还不是全部,从
./vcpkg search opencv4
我明白了
opencv4 4.8.0#12 computer vision library
opencv4[ade] graph api
opencv4[contrib] opencv_contrib module
opencv4[cuda] CUDA support for opencv
opencv4[cudnn] cuDNN support for opencv
opencv4[dc1394] Dc1394 support for opencv
opencv4[default-features] Platform-dependent default features
opencv4[dnn] Enable dnn module
opencv4[dnn-cuda] Build dnn module with CUDA support
opencv4[eigen] Eigen support for opencv
opencv4[ffmpeg] ffmpeg support for opencv
opencv4[freetype] Freetype support for opencv
opencv4[gdcm] GDCM support for opencv
opencv4[gstreamer] gstreamer support for opencv
opencv4[gtk] GTK support for opencv
opencv4[halide] Halide support for opencv
opencv4[ipp] Enable Intel Integrated Performance Primitives
opencv4[jasper] JPEG 2000 support for opencv (deprecated)
opencv4[jpeg] JPEG support for opencv
opencv4[lapack] LAPACK support for opencv
opencv4[nonfree] allow nonfree and unredistributable libraries
opencv4[openexr] OpenEXR support for opencv
opencv4[opengl] opengl support for opencv
opencv4[openjpeg] JPEG 2000 support for opencv
opencv4[openmp] Enable openmp support for opencv
opencv4[openvino] OpenVINO support for OpenCV DNN
opencv4[ovis] opencv_ovis module
opencv4[png] PNG support for opencv
opencv4[python] Python wrapper support for opencv
opencv4[qt] Qt GUI support for opencv
opencv4[quirc] Enable QR code module
opencv4[sfm] opencv_sfm module
opencv4[tbb] Enable Intel Threading Building Blocks
opencv4[tiff] TIFF support for opencv
opencv4[vtk] vtk support for opencv
opencv4[webp] WebP support for opencv
opencv4[world] Compile to a single package support for opencv
如果我需要其中一个未安装的模块,会发生什么情况?看来 vcpkg.json 不接受
opencv4[contrib]
。所以唯一的选择是使用 ./vcpkg install opencv4[contrib]
手动安装它?
在 vcpkg.json 中,您需要为特定包添加 features,
例如:
{
"dependencies": [
{
"name": "boost",
"version>=": "1.84.0"
},
{
"name": "opencv",
"version>=": "4.8.0",
"features": [
"contrib",
"ffmpeg"
]
},
"fmt"
]
}