WSL Opencv with_ffmpeg conan1.60.0

我是ubuntu18.

self.options"opencv".with_ffmpeg = True

关键是gcc版本需要conan支持,比如我的是:

compiler=gcc

compiler.version=7.5

此外还需要安装系统所需库:
https://qq742971636.blog.csdn.net/article/details/132559789

甚至来说,可以装一些系统编译好的,免得没有系统文件:

复制代码
sudo apt-get install build-essential
sudo apt install ffmpeg --fix-missing
sudo apt-get install pkg-config
sudo apt install libopencv-dev

conanfile.py

复制代码
from conans import ConanFile, CMake


class PhotoTranslateConan(ConanFile):
    name = "video_deidentification"
    license = ""
    url = "https://gitlab.upuphone.com/ai-group/client/sdk/public/computer_vision/video_deidentification.git"
    description = "video_deidentification"
    topics = ("video_deidentification")
    settings = "os", "compiler", "build_type", "arch"
    options = {"shared": [True, False], "fPIC": [True, False]}
    default_options = {"shared": True, "fPIC": True}
    generators = "cmake", "virtualenv"

    _cmake = None

    def requirements(self):
        self.requires("fmt/9.1.0") # spdlog需求
        self.requires("jsoncpp/1.9.5")
        self.requires("spdlog/1.11.0")
        self.requires("eigen/3.3.9")
        # self.requires("gtest/cci.20210126")
        # self.requires("boost/1.70.0")
        # self.requires("cpp-httplib/0.11.3")
        # self.requires("openssl/3.0.7")
        if self.settings.os != "Android":
            self.requires("opencv/4.5.5")

    def configure(self):
        if self.settings.os == "Windows":
            del self.options.fPIC

        if self.settings.os == "Windows":
            self.options["opencv"].with_ffmpeg = False

        if self.settings.os == "Linux":
            # print("######################", self.options["opencv"].with_ffmpeg)
            self.options["opencv"].with_ffmpeg = True
            self.options["opencv"].shared = False
            self.options["opencv"].contrib = False
            self.options["opencv"].contrib_freetype = False
            self.options["opencv"].with_gtk = False

    def build(self):
        cmake = self._configure_cmake()
        cmake.build()
        cmake.install()

    def _configure_cmake(self):
        if self._cmake:
            return self._cmake
        self._cmake = CMake(self)
        # 判断arch是否为armv7、x86
        if self.settings.arch == "armv7" or self.settings.arch == "x86":
            self._cmake.definitions["USE_32BIT"] = True
        self._cmake.configure()
        return self._cmake

conan profile

复制代码
[settings]
os=Linux
os_build=Linux
arch=x86_64
arch_build=x86_64
compiler=gcc
compiler.version=7.5
compiler.libcxx=libstdc++11
build_type=Release
[options]
[build_requires]
[env]

编译完成:

相关推荐
小豆庄21 小时前
监控视频脱敏的追踪漂移与ID撞号陷阱
目标跟踪·ffmpeg·音视频·视频·敏捷流程
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avcodec_parameters_copy调用流程与实战(二十五)
linux·运维·服务器·ffmpeg·音视频·车载音频
FlightYe2 天前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
小豆庄2 天前
本地视频打码:多模型检测、帧间追踪与18种模糊的选型
opencv·目标检测·ai·自然语言处理·音视频·视频
爱吃火鸡面呀2 天前
OpenCV 颜色识别实战:从 HSV 原理到摄像头实时检测
人工智能·opencv·计算机视觉
Android系统攻城狮2 天前
Linux FFmpeg深度解析之avcodec_default_get_buffer2调用流程与实战(二十)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
Android系统攻城狮2 天前
Linux FFmpeg深度解析之av_parser_init调用流程与实战(二十一)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
ahccqw2 天前
OpenCV 缩放 与 位移
人工智能·opencv·计算机视觉
Android系统攻城狮3 天前
Linux FFmpeg深度解析之avcodec_flush_buffers调用流程与实战(十九)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频进阶
AI的探索之旅3 天前
OpenCV Day40 —— K-means 聚类与 EM 高斯混合
opencv·kmeans·聚类