
MSYS2
文章平均质量分 67
witton
这个作者很懒,什么都没留下…
展开
-
MinGW下编译ffmpeg源码时生成compile_commands.json
MinGW下编译ffmpeg源码时生成compile_commands.json。原创 2025-03-28 18:44:28 · 998 阅读 · 0 评论 -
MSYS2 MinGW64使用Protobuf新版本踩坑
MSYS2下的MinGW64使用ProtoBuf时遇到的一些问题及解决办法。原创 2024-12-02 11:32:04 · 518 阅读 · 0 评论 -
VS2022解决Protobuf compiler version 23.4 doesn‘t match library version 4.23.4
解决VS2022+MinGW+CMake使用Protobuf时,CMake报版本不匹配的问题原创 2023-08-21 14:40:47 · 1314 阅读 · 1 评论 -
VSCode调试mintty时命令行参数多了2>CON 1>CON <CON的问题
VSCode调试`mintty`时命令行参数多了2>CON 1>CON原创 2023-06-06 17:15:13 · 263 阅读 · 0 评论 -
将MSYS2 MinGW集成到Windows终端
集成MinGW到Windows终端原创 2023-06-05 18:00:24 · 2474 阅读 · 0 评论 -
Visual Studio 2022 CMake+MinGW+GDB 调试目标程序
Visual Studio 2022 CMake+MinGW+GDB 调试目标程序原创 2023-05-14 23:51:11 · 1634 阅读 · 3 评论 -
CMake自动按目录结构编译Protobuf代码
CMake自动按目录结构编译protobuf代码原创 2023-04-26 17:49:55 · 2550 阅读 · 0 评论 -
C/C++开发中使用pkg-config来引用依赖库
pkg-config是一个命令行工具,通过它,可以知道库的include路径lib路径以及需要链接的库名,这三样信息是C/C++开发必不可少的信息。其实这些信息都是以文本文件(*.pc)的存放在系统中的,64位Linux一般在,32位Linux一般在,MinGW一般在MinGW安装目录的下。可以看一下MinGW下的Name: GLib可以看到里面有很多信息,但最重要的是在编译链接时所需要的信息Libs和Cflags,它会自动把所依赖的其它库给包含进来,非常省事。原创 2023-04-20 18:49:49 · 1395 阅读 · 2 评论 -
解决QT:may not produce code compatible with the Qt version
解决Qt:Warning: The compiler "MinGW-w64 MINGW64 C++ (MSYS2)" (x86-windows-msys-pe-64bit) may not produce code compatible with the Qt version "Qt 6.2.0 (mingw64)" (x86-windows-msys-pe-64bit).原创 2023-04-05 19:43:07 · 2306 阅读 · 2 评论 -
解决QT:NO QML utility installed的问题
在QT Creator中查看Qt的版本,发现自动检测的版本要么是红色的叹号,要么是黄色的叹号。红色的叹号表示完全不可用,黄色的叹号表示有警告,可以看到下图Qt 6.4.3的就为黄色的叹号,可以看到下面有一个提示:NO QML utility installed。安装完成后,再看,前面没黄色的叹号了。原创 2023-04-05 18:20:35 · 2192 阅读 · 1 评论 -
MSYS2中mingw-w64-x86_64-qt-creator-10.0.0-2不能新建项目
qtcreator 10不能新建项目,使用pacman安装本地包发现问题依旧,应该为MSYS2更新后的问题。原创 2023-04-05 15:52:50 · 701 阅读 · 0 评论 -
Visual Studio 2022使用MinGW来编译调试C/C++程序
VS 2022使用MinGW来开发C/C++程序原创 2022-08-07 17:23:16 · 17843 阅读 · 22 评论 -
在MinGW中构建GCC交叉编译器和GDB交叉调试器
前文《C语言使用MinGW中的GCC生成平面(flat)二进制文件》中有介绍MinGW中使用GCC生成编写操作系统内核所需要的32位平面(flat)二进制文件。但是如果想要在Loader中使用C语言,即编译16位的汇编与C混合代码,就必须使用ELF格式才能转换成16位平面(flat)二进制文件。MinGW默认的GCC只能生成PE文件,不能生成ELF文件,而pei-386是无法转换成16位平面(flat)二进制文件的。如果在link.ld中使用,会报错:使用使用,则会报:所以为了能使用MinGW编译16位原创 2022-07-06 18:51:38 · 2141 阅读 · 2 评论 -
C语言使用MinGW中的GCC生成平面(flat)二进制文件
最近抽空在看自制操作系统相关的书籍,比如《自己动手写操作系统》、《Orange’S:一个操作系统的实现》、《一个64位操作系统的设计与实现》、《30天自制操作系统》等等,只有《30天自制操作系统》是可以完全在Windows下编译、链接、生成镜像的(使用的自制的非标准工具),其它几个全部都是在虚拟机中安装Linux系统,在Windows下编写源码,Linux下进行源码的编译链接,然后生成镜像。这就导致需要在Windows与Linux之间来回切换。笔者尝试改写书中Makefile,用于MinGW环境下完全编译链原创 2022-06-30 18:41:49 · 1310 阅读 · 0 评论 -
解决:pip is configured with locations that require TLS/SSL
在使用pip进行软件包安装的时候出现问题:WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.解决:make -p ~/.pipvim ~/.pip/pip.conf然后输入内容:[global]index-url = http://mirrors.aliyun.com/pypi/simple/[install原创 2020-10-29 10:14:52 · 42320 阅读 · 50 评论 -
解决退格键在MinGW的vim中不起作用的问题
MinGW下的vim在默认情况下会与Linux下的vim不太一样,比如MinGW中默认的vim配置,退格键(backspace)就不起作用。如果退格键不起作用(不管是MinGW、MacOS,还是Linux),一般都是配置问题导致,可以自行配置backspace功能。当Vim启动时,会检查名为.vimrc的文件是否存在,如果找到了该文件,则会在启动时自动加载其内容作为配置。通过将喜爱的配置保存到.vimrc文件中就可以让Vim在启动时自动应用这些配置。Vim会在许多地方查找.vimrc文件(参见:h vi原创 2021-09-25 15:21:32 · 774 阅读 · 1 评论 -
解决ModuleNotFoundError: No module named ‘pkg_resources‘
今天使用pacman -Syuu升级了一下msys2的MinGW64,结果出现了Python不能正常使用的情况,升级之前都还好好的,现在出现import找不到包。想使用pip查看安装的包的情况,如果报错:ModuleNotFoundError: No module named ‘pkg_resources’# pipTraceback (most recent call last): File "G:\msys64\mingw64\bin\pip-script.py", line 6, in &l原创 2021-08-25 10:24:50 · 12728 阅读 · 1 评论 -
.dll、.lib、.a的转换
一、.dll生成.a在使用Mingw进行开发时,有时依赖的库只有.dll文件,而Mingw需要的是.a文件,这时就需要通过.dll文件生成一个.a文件。以libmysql.dll为例,说明如何生成libmysql.a:gendef libmysql.dlldlltool -d libmysql.def -D libmysql.dll -l libmysql.a -k第一条命令会生成一个libmysql.def文件供第二条命令使用。第二条命令使用前面生成的def文件以及dll文件生成.a文件并把原创 2020-08-21 15:00:57 · 11805 阅读 · 5 评论 -
Shell中显示Git分支名
如果我们安装了git for windows,在使用git bash的时候,如果当前目录是Git管理的目录,则会在后面显示Git的当前分支名:如果我们安装了msys2,则可以不用再安装git for windows,因为Git for windows也是使用的msys2中的mingw64,而且占用的空间还不小。msys2中安装git直接使用下面的命令即可。pacman -S git但是这样安装后不能像Git for windows一样在bash中显示git管理目录的当前分支。为了达到可以显示原创 2020-08-22 15:22:00 · 1012 阅读 · 0 评论 -
使用msys2 mingw64编译gcc
我们在msys2中使用pacman安装的GCC默认是不能显示中文帮助的而Linux下是可以显示中文的:这是因为在编译msys2 Mingw在编译GCC时,是没有打开–enable-nls开关的为了让其可以显示中文,可以尝试自己编译GCC。首先从https://github.com/msys2/MINGW-packages下载mingw-w64-gcc目录中的所有文件,放到一个目录mingw-w64-gcc中或者其它目录中,但是路径中不能包含中文。修改PKGBUILD文件,将–disa原创 2020-08-27 16:21:57 · 2877 阅读 · 0 评论 -
MSYS Makefiles、 MinGW Makefiles与Unix Makefiles的差别
我们在*nix或者Mac系统中做开发会经常使用Makefile来组织构建规则,然后使用make来构建项目。Makefile可以手动编写,也可以使用工具生成。生成Makefile的工具还是比较多的,目前比较常用的跨平台的Makefile生成工具要算CMake了。CMake非常强大,可以生成很多类型的Makefile或者工程文件,可以通过下面的指令来查看具体的可生成的文件。cmake --help随着Mingw、MSYS2、cygwin这些Linux移植系统在Windows上的出现,Windows上也原创 2020-08-28 15:44:51 · 2987 阅读 · 0 评论