背景
- 笔者平时都是基于linux平台开发C++代码,已经熟悉使用CMake这一套工具
- 上一次开发windows应用程序还要追溯到10多年前,彼时还是使用微软的visual studio这个IDE,这个IDE确实也很强大,但也确实很笨重,当时用起来也很不方便(貌似现在也进化了不少)
- 最近偶然需要开发一个windows平台的应用程序,第一个想法是在linux平台下跨平台编译,但后来出现了一些问题
- 此文也作为一个简单的记录,以一个简单的示例来说明:视频抽帧程序,扫描输入目录,将视频按照指定间隔抽帧,然后存储在输出目录
- 样例代码(完整代码,可直接编译运行):https://download.csdn.net/download/Garfield2005/90868131

写的比较简单,有问题请留言
开发过程
ubuntu系统下编译windows程序(使用cmake)
- 安装环境
需要借助mingw-64
# https://www.mingw-w64.org/getting-started/debian/
apt update
apt install g++-mingw-w64-x86-64 gcc-mingw-w64-x86-64
# 选择合适版本的mingw(需要和其他库匹配,比如opencv的编译使用了posix,那么就需要选择使用对应的mingw)
update-alternatives --config x86_64-w64-mingw32-g++
- 编写CMakelist
# CMakelist.txt
cmake_minimum_required(VERSION 3.14)
project(video_frame_extractor)
add_compile_options(-posix)
add_link_options(-posix)
# 设置 C++ 标准
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF) # 禁用编译器扩展,确保标准兼容性
# add_definitions(-D_GLIBCXX_USE_CXX11_ABI=1)
# set(EXECUTABLE_OUTPUT_PATH


8182

被折叠的 条评论
为什么被折叠?



