【Win10+MSYS2+VSCode+Opencv+xmake】开发环境搭建和配置笔记

发布于 2023-07-10  708 次阅读


最近在研究院中的工作是图像处理,需要用到C++ & opencv,但是众所周知在Windows系统中配置环境是一件非常吃屎的事情。但是好在我们有Windows环境配置神器:MSYS2

🎈 作者:Eriktse
🎈 简介:211计算机在读,CCPC全国赛金牌,ICPC区域赛银牌退役选手🏆力争以通俗易懂的方式讲解编程和算法!❤️欢迎关注我,一起交流C++/Python算法。(优质好文持续更新中……)🚀
🎈 个人博客:www.eriktse.com

下面我会逐个介绍各个组件的配置方法。

MSYS2

直接到官网(https://www.msys2.org/ )下载后选择一个目录进行安装,建议选择D:\msys2这个路径。

这个步骤比较傻瓜式,安装完成后D:\msys2目录长这样:

vscode

直接到官网安装就好,这个也不多说。

将MSYS2终端集成到vscode中

修改vscodesetting.json,新增以下内容:

"terminal.integrated.profiles.windows": {
    "Msys2 mingw64": {
        "path": "D:\\msys2\\usr\\bin\\bash.exe",
        "args": ["--login", "-i"]
    }
},
"terminal.integrated.defaultProfile.windows": "Msys2 mingw64",
"terminal.integrated.env.windows":{
    "MSYSTEM": "MINGW64",
    "CHERE_INVOKING": "1",
    "MSYS2_PATH_TYPE": "inherit"
},

如下图

然后新建终端,就可以在vscode中使用msys2终端(MinGW64)。

opencv

MSYS2中安装opencv非常方便,可以用pacman包管理工具,直接输入一下命令即可:

步骤 1:更新和升级MSYS2

打开MSYS2终端,并执行以下命令以更新和升级MSYS2:

pacman -Syu

这将更新MSYS2的软件包管理器和系统软件包到最新版本。

步骤 2:安装OpenCV库

在MSYS2终端中执行以下命令以安装OpenCV库:

pacman -S mingw-w64-x86_64-opencv

这将使用pacman命令从MSYS2存储库中安装预编译的OpenCV库。

xmake

步骤 1:更新和升级MSYS2

打开MSYS2终端,并执行以下命令以更新和升级MSYS2:

pacman -Syu

这将更新MSYS2的软件包管理器和系统软件包到最新版本。

步骤 2:安装xmake

在MSYS2终端中执行以下命令以安装xmake:

pacman -S mingw-w64-x86_64-xmake

这将使用pacman命令从MSYS2存储库中安装预编译的xmake。

在根目录创建一个xmake.lua文件,内容如下:

set_config("plat", "mingw")
set_config("sdk", "D:/msys2/mingw64")
set_optimize("fast") 
add_rules("mode.debug", "mode.release")

--配置项目
target("test")
    set_pcxxheader("pch.h")
    -- 设置为二进制文件
    set_kind("binary")
    -- 将目录下所有cpp文件加入
    add_files("*.cpp")
    -- 新增包含目
    add_includedirs("D:/msys2/mingw64/include/opencv4")
    add_includedirs("D:/msys2/mingw64/include")
    -- 新增链接目录和静态链接库
    add_linkdirs("D:/msys2/mingw64/lib")
    add_links("opencv_core", "opencv_highgui", "opencv_imgproc", "opencv_imgcodecs")

    -- 新增boost的filesystem
    add_links("boost_filesystem-mt")

完成

其中部分内容需要自行进行一些修改,本文主要用于自己的备忘。

19岁,性别未知,ACM-XCPC退役选手,CCPC全国邀请赛金牌,ICPC亚洲区域赛银牌,武汉某院校计算机科学与技术专业本科在读。
最后更新于 2023-07-10