安装mingw 版 cmake

CMake 是 "包工头",MinGW-w64 是 "施工队" ,Windows 下做 C/C++ 开发(尤其开源项目),两者都得装,所以我们直接下一个终端都装上。

最难绷的一集:机器人 SDK 库文件(.lib)是用 MSVC(Visual Studio)编译的,它不能和 MinGW 编译器链接。

首先去掉中文路径:D:\RobotConSys_SDK\RobotConSys_SDK\example\build

1.下载一个MSYS2 MSYS 终端

https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/msys2-x86_64-latest.exe

2.添加全局环境变量,不只是在MSYS2里面能搜到

以【管理员】打开 PowerShell

安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows

加载个人及系统配置文件用了 4385 毫秒。

(base) PS $newPath = "E:\msys64\mingw64\bin"

(base) PS $sysPath = Environment::GetEnvironmentVariable("Path", "Machine")

(base) PS if (sysPath -notcontains newPath) {

>> Environment::SetEnvironmentVariable("Path", "sysPath;newPath", "Machine")

>> Write-Host "✅ 已成功添加到系统全局Path"

>> } else {

>> Write-Host "⚠️ 路径已存在,无需重复添加"

3.替换镜像源,提速

打开E:\msys64\etc\pacman.d\原版里有很多国外镜像,在国内访问速度极慢,甚至会超时。

(可以不用,先裸装、不改源)

4.安装

pacman -S --needed base-devel mingw-w64-x86_64-toolchain --disable-download-timeout

pacman -S mingw-w64-x86_64-cmake
5.下载c++版本的opencv

conda 装的 OpenCV 是 MSVC 编译的,我们用的是 MinGW

Releases · huihut/OpenCV-MinGW-Build

6.测试

生成的 Makefile 是 Linux 版本的,不能直接在 VSCode 里右键左边的 build 文件夹 → 选 "在集成终端中打开",运行mingw32-make,所以把整个 build 文件夹 彻底删掉!

我们直接 CMake 版本太新了,而智能车 SDK 写得比较早,所以要限制版本:-DCMAKE_POLICY_VERSION_MINIMUM=3.5

因此输入如下即可:

cmake .. -G "MinGW Makefiles" -DTARGET_PLATFORM=win_x64 -DCMAKE_POLICY_VERSION_MINIMUM="3.5" -DOpenCV_DIR="D:/OpenCV-MinGW-Build-OpenCV-4.5.5-x64"

相关推荐
Ruiery40 分钟前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包43 分钟前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
wjkjpcba2 小时前
PCBA烧录程序是什么:PCBA包工包料厂家解析烧录与测试
linux·数据库·人工智能·smt贴片加工·pcba贴片加工厂
꯭自꯭闭꯭2 小时前
达梦事物特性及MVCC
linux·运维·数据库
羔羊++4 小时前
18_实验十七_其他命令与自定义启动变量
linux
DYWorker0016 小时前
Linux驱动:RK3568 GMAC + YT8531C 千兆以太网全流程解剖
linux
lisanmengmeng8 小时前
NRPE 添加命令(一)
linux·运维·服务器
树下水月8 小时前
Typora破解
linux·服务器·前端
沫璃染墨9 小时前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
wuminyu9 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++