安装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"

相关推荐
ljs6482739516 小时前
Linux 实用命令:环境变量、文件传输、压缩解压、跨服务器传文件
linux·运维·服务器
__Witheart__6 小时前
lunch选择的版型与版型对应的配置文件
android·linux
A小调的码农6 小时前
给垃圾平板“一生E本” 装新系统—————Armbian 编译 KYX T7Y (RK3326) 踩坑全记录
linux·嵌入式硬件
ljs6482739516 小时前
Linux 网络常用命令与端口基础详解
linux·网络·php
qq_163135757 小时前
Linux 判断是否安装 Conda / Miniconda 完整方法
linux
weixin_307779137 小时前
Linux下Docker Compose里运行Milvus向量数据库故障诊断Shell脚本
linux·运维·数据库·docker·milvus
素心如月桠7 小时前
windows系统使用https://lnmp.org/的LNMP一键安装包,来打开我的服务器Linux
linux·运维·服务器
AOwhisky7 小时前
Linux(CentOS)系统管理入门笔记:第二期核心知识点自测与详解
linux·笔记·centos
运维大师7 小时前
【Linux运维极简教程】03-用户与用户组管理
linux·运维·服务器
云计算-Security8 小时前
同(异)主机 Linux NAT 最佳实践
linux·服务器·网络