工程师 - MSYS2介绍
https://www.msys2.org/
MSYS2 是一系列工具和库,为您提供了一个易于使用的环境,用于构建、安装和运行本地 Windows 软件。
MSYS2 is a collection of tools and libraries providing you with an easy-to-use environment for building, installing and running native Windows software.
它由名为 mintty 的命令行终端、bash、版本控制系统(如 git 和 subversion)、工具(如 tar 和 awk),甚至构建系统(如 autotools)组成,所有这些都基于 Cygwin 的改进版本。尽管其中一些核心部分是基于 Cygwin 的,但 MSYS2 的主要重点是为本地 Windows 软件提供一个构建环境,并将使用 Cygwin 的部分保持在最低水平。MSYS2 为 GCC、mingw-w64、CPython、CMake、Meson、OpenSSL、FFmpeg、Rust、Ruby 等提供了最新的本地构建环境。
It consists of a command line terminal called mintty, bash, version control systems like git and subversion, tools like tar and awk and even build systems like autotools, all based on a modified version of Cygwin. Despite some of these central parts being based on Cygwin, the main focus of MSYS2 is to provide a build environment for native Windows software and the Cygwin-using parts are kept at a minimum. MSYS2 provides up-to-date native builds for GCC, mingw-w64, CPython, CMake, Meson, OpenSSL, FFmpeg, Rust, Ruby, just to name a few.
为了方便安装软件包和更新软件包,它采用了一个名为 Pacman 的软件包管理系统,Arch Linux 用户对这个系统应该不陌生。它带来了许多强大的功能,如依赖关系解决和简单的完整系统升级,以及直接和可重复的软件包构建。我们的软件包仓库包含 3300 多个预制软件包,随时可供安装。
To provide easy installation of packages and a way to keep them updated it features a package management system called Pacman, which should be familiar to Arch Linux users. It brings many powerful features such as dependency resolution and simple complete system upgrades, as well as straight-forward and reproducible package building. Our package repository contains more than 3300 pre-built packages ready to install.
更多详情,请参阅 “什么是MSYS2?”,其中还将MSYS2与其他软件发行版和开发环境(如Cygwin、WSL、Chocolatey、Scoop......)进行了比较,以及 “谁在使用MSYS2?”,以了解哪些项目正在使用MSYS2以及使用的目的。
For more details see 'What is MSYS2?' which also compares MSYS2 to other software distributions and development environments like Cygwin, WSL, Chocolatey, Scoop, ... and 'Who Is Using MSYS2?' to see which projects are using MSYS2 and what for.
Installation
1, 下载安装文件:msys2-x86_64-20241116.exe
https://github.com/msys2/msys2-installer/releases/download/2024-11-16/msys2-x86_64-20241116.exe
(可选)有关安装程序的更多信息,如命令行选项,或如何验证安装程序的校验和签名,请参阅安装程序指南。
(Optional) For more information on the installer, like command line options, or how to verify the checksum and signature of the installer, see the installer guide.
2, Run the installer. Installing MSYS2 requires 64 bit Windows 10 or newer.
运行安装程序。安装 MSYS2 需要 64 位 Windows 10 或更新版本。
3, Enter your desired Installation Folder (short ASCII-only path on a NTFS volume, no accents, no spaces, no symlinks, no subst or network drives, no FAT).
输入所需的安装文件夹(NTFS 卷上的仅 ASCII 短路径,无重音符号、无空格、无符号链接、无子驱动器或网络驱动器、无 FAT)。

4, When done, click Finish.
完成后,单击 “完成”。

5, Now MSYS2 is ready for you and a terminal for the UCRT64 environment will launch.
现在 MSYS2 已经准备就绪,UCRT64 环境的终端也将启动。

6, You will probably want to install some tools like the mingw-w64 GCC to start compiling projects. Run the following command:
您可能需要安装一些工具(如 mingw-w64 GCC)来开始编译项目。运行以下命令
$ pacman -S mingw-w64-ucrt-x86_64-gcc
7, The terminal window will show the output as below. Press 'Enter' to continue:
终端窗口将显示如下输出。按 “回车键 ”继续:
resolving dependencies...
looking for conflicting packages...
Packages (15) mingw-w64-ucrt-x86_64-binutils-2.41-2
mingw-w64-ucrt-x86_64-crt-git-11.0.0.r216.gffe883434-1
mingw-w64-ucrt-x86_64-gcc-libs-13.2.0-2 mingw-w64-ucrt-x86_64-gmp-6.3.0-2
mingw-w64-ucrt-x86_64-headers-git-11.0.0.r216.gffe883434-1
mingw-w64-ucrt-x86_64-isl-0.26-1 mingw-w64-ucrt-x86_64-libiconv-1.17-3
mingw-w64-ucrt-x86_64-libwinpthread-git-11.0.0.r216.gffe883434-1
mingw-w64-ucrt-x86_64-mpc-1.3.1-2 mingw-w64-ucrt-x86_64-mpfr-4.2.1-2
mingw-w64-ucrt-x86_64-windows-default-manifest-6.4-4
mingw-w64-ucrt-x86_64-winpthreads-git-11.0.0.r216.gffe883434-1
mingw-w64-ucrt-x86_64-zlib-1.3-1 mingw-w64-ucrt-x86_64-zstd-1.5.5-1
mingw-w64-ucrt-x86_64-gcc-13.2.0-2
Total Download Size: 49.38 MiB
Total Installed Size: 418.82 MiB
:: Proceed with installation? [Y/n]
[... downloading and installation continues ...]
8, Now you can call gcc to build software for Windows.
现在你可以调用 gcc 为 Windows 构建软件了。
$ gcc --version
gcc.exe (Rev2, Built by MSYS2 project) 13.2.0
9, After installing MSYS2 it will update itself via pacman, see the update guide for more information.
安装 MSYS2 后,它会通过 pacman 进行自我更新,更多信息请参阅更新指南。
MSYS2支持的基本可安装包:
Base Packages - MSYS2 Packages
MSYS
MSYS是 "Minimal SYStem "的缩写,是一个Bourne Shell命令行解释器系统。作为微软cmd.exe的替代品,它提供了一个通用的命令行环境,特别适合与MinGW一起使用,以便将许多开源应用程序移植到MS-Windows平台上;它是Cygwin-1.3的轻量级分支,包括一小部分Unix工具,来帮助实现开源应用程序移植到Windows上。
MSYS是Cygwin的简化版,和MinGW一样,从2010年开始项目停止并不再使用了。
MSYS2
一个简化的Cygwin,是其一个分支,继承了msys的修改,并与Cygwin的功能保持同步,集成在Pacman(软件包管理器)里。
相关文章:
工程师 - MSYS2介绍
https://www.msys2.org/ MSYS2 是一系列工具和库,为您提供了一个易于使用的环境,用于构建、安装和运行本地 Windows 软件。 MSYS2 is a collection of tools and libraries providing you with an easy-to-use environment for building, installing an…...
算法基础三:插入排序
定义 插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用…...
小米汽车加速出海,官网建设引领海外市场布局!
面对国内市场的饱和态势,中国企业出海步伐纷纷加速,小米也是其中的一员。Canalys数据显示,2024年第三季度,小米以13.8%的市场份额占比,实现了连续17个季度位居全球前三的成绩。 据“36 氪汽车”报道,小米汽…...
Python Polars快速入门指南:LazyFrames
前文已经介绍了Polars的Dataframe, Contexts 和 Expressions,本文继续介绍Polars的惰性API。惰性API是该库最强大的功能之一,使用惰性API可以设定一系列操作,而无需立即运行它们。相反,这些操作被保存为计算图,只在必要…...
什么是网络安全(Cybersecurity)?
不同组织机构对网络安全(Cybersecurity或Cyber Security)的定义不尽相同。从目标上来说,网络安全主要用于保护网络、计算机、移动设备、应用程序及数据等资产免受网络攻击,避免造成数据泄露、业务中断等安全问题。 网络钓鱼、勒索…...
VBA批量插入图片到PPT,一页一图
Sub InsertPicturesIntoSlides()Dim pptApp As ObjectDim pptPres As ObjectDim pptSlide As ObjectDim strFolderPath As StringDim strFileName As StringDim i As Integer 设置图片文件夹路径strFolderPath "C:\您的图片文件夹路径\" 请替换为您的图片文件夹路径…...
Pandas-DataFrame入门
文章目录 一. Pandas DataFrame简介二. 加载数据集1. 目的2. 步骤① 导包② 加载csv③ 查看数据类型及属性④ Pandas与Python常用数据类型对照 三. 查看部分数据1. 根据列名加载部分列数据① 加载一列数据,通过df[列名]方式获取② 加载多列数据,通过df[[…...
爬虫 - 爬取王者荣耀所有皮肤图片
结果展示 安装 pip install requests logger代码 import json import os import re from concurrent.futures import ThreadPoolExecutorimport requests from loguru import loggerdef parse_url(url, bFalse):try:headers {"User-Agent": "Mozilla/5.0 (Wi…...
【畅购商城】购物车模块之查看购物车
目录 分析 接口 后端实现 前端实现:显示页面 前端实现:显示购物车信息 分析 用户如果没有登录,购物车存放在浏览器端的localStorage处,且以数组的方式进行存储。用户如果登录了,购物车存放在redis中,…...
Spring Boot 学习笔记
学习代码第一步:如何写 Hello world ? 1、新建项目 新建一个 Maven Java 工程,在 pom.xml 文件中添加 Spring Boot Maven 依赖: <parent><groupId>org.springframework.boot</groupId><artifactId>spri…...
快速打造智能应用:从设计到上线的全流程指南
随着人工智能技术的快速发展,如何将大模型技术转化为实际应用成为了各行业关注的焦点。本文将以一个经典的 RAG(检索增强生成)知识问答系统为例,详细介绍从智能体设计到最终应用部署的全流程。通过结合阿里云的魔笔低代码平台和丰…...
Java-将一个大列表均分成多个小列表,每个小列表包含10个元素
要将一个大列表均分成多个小列表,每个小列表包含10个元素,可以使用多种方法。以下是几种常 见的方法: 方法一:使用 subList 这是你已经提到的方法,通过 subList 来获取子列表。 import java.util.ArrayList; import java.util.List;public class BatchProcessingExamp…...
tcp_rcv_synsent_state_process函数
tcp_rcv_synsent_state_process 是 Linux Kernel 中用于处理 TCP 连接在 SYN-SENT 状态下接收到报文的函数。这个函数在 TCP 三次握手阶段起到了至关重要的作用,处理了在客户端发送 SYN 请求之后收到服务器响应报文的各种情况。 以下是这个函数的解读和剖析: int tcp_rcv_sy…...
关于无线AP信道调整的优化(锐捷)
目录 一、信道优化的基本原则二、2.4G频段信道优化三、5G频段信道优化四、信道优化代码具体示例五、其他优化措施 一、信道优化的基本原则 信道优化旨在减少信道间的干扰,提高网络覆盖范围和信号质量。基本原则包括: 1. 选择合适的信道:根据…...
C#编写的金鱼趣味小应用 - 开源研究系列文章
今天逛网,在GitHub中文网上发现一个源码,里面有这个金鱼小应用,于是就下载下来,根据自己的C#架构模板进行了更改,最终形成了这个例子。 1、 项目目录; 2、 源码介绍; 1) 初始化; 将样…...
计算机网络|数据流向剖析与分层模型详解
文章目录 一、网络中的数据流向二、计算机网络通信模型1.OSI 模型2.TCP/IP 模型3.TCP/IP五层模型3.1 分层架构描述3.2各层地址结构3.3UDP数据包报头结构 三、总结 一、网络中的数据流向 在计算机网络中,数据的流向是指数据从发送端到接收端的传输路径。数据流向涉及…...
某些iphone手机录音获取流stream延迟问题 以及 录音一次第二次不录音问题
一些型号的iphone手机录音获取流stream延迟问题 以及 录音一次第二次不录音问题 延迟问题 navigator.mediaDevices.getUserMedia({ audio: true }) .then((stream) > {console.log(stream) })从开始到获取stream会有将近2s的延迟 导致按下按钮开始录音 会有前…...
gazebo_world 基本围墙。
如何使用? 参考gazebo harmonic的官方教程。 本人使用harmonic的template,在里面进行修改就可以分流畅地使用下去。 以下是world 文件. <?xml version"1.0" ?> <!--Try sending commands:gz topic -t "/model/diff_drive/…...
Ubuntu 上高效实现 Texlive 安装和管理
文章目录 介绍操作步骤1. 下载 Texlive 安装包2. 解压安装包3. 安装基础安装命令通用的 scheme 选项 4. 配置环境变量 使用 tlmgr 管理包总结 介绍 Texlive 是学术和技术文档编写的重要工具, 选择适合的安装方案能帮助您提升效率并减少磁盘空间占用. 本文将为您提供在 Ubuntu …...
LeetCOde914 卡牌分组
扑克牌分组问题:探索最大公约数的应用 在编程的世界里,我们经常会遇到各种有趣的算法问题,今天要和大家分享的是一道关于扑克牌分组的问题,它巧妙地运用了最大公约数的概念来解决。 一、问题描述 给定一副牌,每张牌…...
【数据库系统】数据库系统概论——第十四章 大数据管理
第十四章 大数据管理 文章目录 第十四章 大数据管理 14.1大数据概述 14.1.1什么是大数据 14.1.2大数据的特征 14.2大数据的应用 14.2.1感知现在 预测未来----互联网文本大数据管理与挖掘 14.2.2数据服务 实时推荐----基于大数据分析的用户建模 14.3大数据管理系统 14.3.1NoSQL数…...
SecGPT-14B效果展示:对Splunk SPL查询语句进行安全语义解释与优化建议
SecGPT-14B效果展示:对Splunk SPL查询语句进行安全语义解释与优化建议 1. 引言:当安全分析遇上智能助手 想象一下这个场景:作为一名安全分析师,你正面对海量的日志数据,需要快速编写Splunk SPL查询语句来追踪一次潜在…...
YOLO26镜像实战案例分享:基于自定义数据集的训练与评估
YOLO26镜像实战案例分享:基于自定义数据集的训练与评估 在计算机视觉领域,目标检测一直是核心且应用广泛的任务。从安防监控到自动驾驶,从工业质检到医疗影像,快速准确地识别图像中的物体是许多智能系统的基石。YOLO系列模型以其…...
OpenClaw浏览器自动化:Qwen3.5-9B爬取带图片的学术资料
OpenClaw浏览器自动化:Qwen3.5-9B爬取带图片的学术资料 1. 为什么需要自动化学术资料采集 上周我在研究量子计算的最新进展时,遇到了一个典型痛点:需要在十几个学术平台手动翻页、下载PDF、截图关键图表,再手工整理参考文献。这…...
Ollama安装-运行模型-常用运维命令
方法1:官方命令行安装 安装: curl -fsSL https://ollama.com/install.sh | sh 注:需要网络支持,可以安装的话就不需要执行手动安装的配置,官方脚本会把所有东西都配置好,如果要修改镜像源可查看后面修改镜像…...
需求用例的写法
一、为什么写需求用例 流程图为需求用例提供了关键路径,而需求用例则是对业务场景的全面还原。本文将从以下四个方面阐述用例的信息: 用例的定义用例的粒度用例的例子用例的关键点解释 我写需求文档有几大准则,是需要时刻铭记和实践的&…...
太空探索与宇宙概述
推动太空探索的技术 太空探索是由航空航天工程、机器人技术和卫星技术的进步所推动的,融合了科学、技术和创新的跨学科领域。其总体目标是探索天体、研究宇宙现象,并解开有关宇宙起源、演化以及地外生命存在可能性的关键问题。 火箭技术。太空探索中最基…...
《Nature》:单细胞时空组学解析人类母胎界面
母胎界面是母体与胎儿细胞镶嵌共存的关键区域,其细胞、分子和空间细胞组成结构尚未完全明确。近日,《Nature》期刊发表了一项题为“Single-cell spatiotemporal dissection of the human maternal–fetal interface”的论文。该研究整合了配对的snRNA-se…...
当AI能做一切,我们还剩下什么?
许多人以为,数字化就是用机器取代人。算法越来越聪明,自动化越来越普及,人的作用似乎正在被削弱。 事实恰恰相反。 数字化不是人的退场,而是人的升级。技术每向前推进一步,对人的要求就提高一层。机器负责执行…...
JMS, ActiveMQ 学习一则偌
开发个什么Skill呢? 通过 Skill,我们可以将某些能力进行模块化封装,从而实现特定的工作流编排、专家领域知识沉淀以及各类工具的集成。 这里我打算来一次“套娃式”的实践:创建一个用于自动生成 Skill 的 Skill,一是用…...
