首页
关于
友链
留言
统计
Search
1
基于Rocky Linux 8.10系统使用源码搭建LNMP环境,附加安装SQLite
324 阅读
2
阿里云轻量应用服务器图文安装红帽系统RHEL8.10
73 阅读
3
.NET Framework
56 阅读
4
博客测试文章
33 阅读
5
VMware Workstation Pro
20 阅读
软件整理
C/C++学习笔记
Linux学习笔记
博客搭建
杂项
Search
标签搜索
Nginx
测试
LNMP
Typecho
红帽系统
Alpine Linux
GRUB
windows
PowerShell
MySQL
SQLite
PHP
Rocky Linux
HTTPS
SSL
Let's Encrypt
GDB
博客
Apache
SQLite3
hansyee
累计撰写
105
篇文章
累计收到
2
条评论
首页
栏目
软件整理
C/C++学习笔记
Linux学习笔记
博客搭建
杂项
页面
关于
友链
留言
统计
搜索到
7
篇与
的结果
2026-02-27
Visual Studio
Visual Studio 2017 下载地址2017社区版:https://aka.ms/vs/15/release/vs_community.exe2017专业版:https://aka.ms/vs/15/release/vs_professional.exe2017企业版:https://aka.ms/vs/15/release/vs_enterprise.exe企业版离线下载(包含所有功能和所有语言)vs_enterprise.exe --layout c:\vs_2017_enterprise_offline企业版序列号NJVYC-BMHX2-G77MM-4XJMR-6Q8QF专业版序列号KBJFW-NXHK6-W4WJM-CRMQB-G3CDH
2026年02月27日
1 阅读
0 评论
0 点赞
2025-07-09
C/C++标准文档
C标准转自:https://www.open-std.org/jtc1/sc22/wg14/https://www.open-std.org/jtc1/sc22/wg14/www/projects#9899修订发布草案C2yNot availableN3550 [2025-05-04]C23ISO/IEC 9899:2024N3220 [2024-02-22] [early C2y draft)C17ISO/IEC 9899:2018N2310 [2018-11-11] [early C23 draft)C11ISO/IEC 9899:2011N1570 [2011-04-04]C99ISO/IEC 9899:1999N1256 [2007-09-07]C95ISO/IEC 9899:1990/Amd 1:1995Not availableC90ISO/IEC 9899:1990Not availableC89ANSI X3.159-1989NIST publicationC++标准转自:https://www.open-std.org/jtc1/sc22/wg21/https://www.open-std.org/jtc1/sc22/wg21/docs/standards#14882修订发布草案C++23ISO/IEC 14882:2023N4950C++20ISO/IEC 14882:2020N4849C++17ISO/IEC 14882:2017N4659C++14ISO/IEC 14882:2014N3797C++11ISO/IEC 14882:2011N3242
2025年07月09日
8 阅读
0 评论
0 点赞
2024-11-09
gdb的简单使用
常用命令如果希望程序可以调试,在编译时需要加入-g选项,该选项告诉编译器生成调试信息,包括行号、变量名、变量值等;并且不能同时使用-O的优化选项,这可能会改变代码的原始结构和执行流程,进而影响调试。 进入调试的方式: gdb target-program或gdb -q target-program。-q表示不打印gdb版本信息,界面较为干净。命令简写说明set args 设置程序运行的参数 如需要运行:./demo aa bb cc 则设置方式:set args aa bb ccbreakb设置断点 b 20 表示在第20行设置断点,可以设置多个断点info breakpoints 显示断点delete breakpointsd删除断点 d 20 表示删除序号为20的断点,不加序号则删除所有断点runr开始/重新运行程序, 程序运行到断点的位置会停下来,如果没有遇到断点,程序一直运行下去nextn执行当前行语句,如果该语句为函数调用,不会进入函数内部steps执行当前行语句,如果该语句为函数调用,则进入函数内部。如果是库函数或者第三方库函数,则进不到函数内部,因为没有源代码,只要有源码的地方都能进去printp显示变量或表达式的值,如果是指针变量则显示指针指向的变量的地址。 如果p后面是表达式,会执行这个表达式。还可以作为变量的赋值语句来用continuec继续运行程序,遇到下一个断点停止,如果没有遇到断点,程序将一直运行set var 设置变量的值 存在变量 int i; char name[21]; 设置值 set var i = 10086 set var name = "JacksonWang"quitq退出gdbstart 单步执行,运行程序,并停留在第一个执行语句finish 在进入到函数内部的情况下,结束当前函数,回到函数调用点backtracebt查函数调用堆栈until 当你厌倦了在一个循环体内单步跟踪时,这个命令可以运行程序直到退出循环体。 until 行号:运行至某行,不仅仅用来跳出循环b 23 if a>b 条件断点设置, if后面跟着条件示例源码#include <iostream> #include <string> using namespace std; void func(int i, string &s) { cout << "i = " << i << " s = " << s << endl; } int main(int argc, char *argv[]) { if (argc != 3) { cout << "执行方式:test 编号 姓名" << endl; cout << "如:test 100 张三" << endl; return -1; } int i = stoi(argv[1]); string s = argv[2]; func(i, s); func(i, s); for (auto i = 0; i < 10; ++i) { string s = "第" + to_string(i)+ "个编号"; cout << s << endl; } return 0; }调试过程[devuser@Rocky8-online gdb调试]$ gdb test GNU gdb (GDB) Rocky Linux 8.2-20.el8.0.1 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: --Type <RET> for more, q to quit, c to continue without paging-- <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from test...done. (gdb) set args 100 张三 (gdb) b 23 Breakpoint 1 at 0x4018aa: file main.cpp, line 23. (gdb) b 25 Breakpoint 2 at 0x4018be: file main.cpp, line 25. (gdb) b 27 Breakpoint 3 at 0x4018d2: file main.cpp, line 27. (gdb) info breakpointsbreakpoint keep y 0x00000000004018aa in main(int, char**) at main.cpp:23breakpoint keep y 0x00000000004018be in main(int, char**) at main.cpp:25breakpoint keep y 0x00000000004018d2 in main(int, char**) at main.cpp:27(gdb) d 27No breakpoint number 27.(gdb) d 3(gdb) info breakpointsNum Type Disp Enb Address Whatbreakpoint keep y 0x00000000004018aa in main(int, char**) at main.cpp:23breakpoint keep y 0x00000000004018be in main(int, char**) at main.cpp:25(gdb) rStarting program: /home/devuser/workspace/c_c++/test/gdb调试/test 100 张三Breakpoint 1, main (argc=3, argv=0x7fffffffded8) at main.cpp:23func(i, s);Missing separate debuginfos, use: yum debuginfo-install glibc-2.28-251.el8_10.2.x86_64 libgcc-8.5.0-22.el8_10.x86_64 libstdc++-8.5.0-22.el8_10.x86_64(gdb) ni = 100 s = 张三Breakpoint 2, main (argc=3, argv=0x7fffffffded8) at main.cpp:25func(i, s);(gdb) p i$1 = 100(gdb) p s$2 = "张三"(gdb) set var i = 200(gdb) sfunc (i=200, s="张三") at main.cpp:8cout << "i = " << i << " s = " << s << endl;(gdb) ni = 200 s = 张三}(gdb) nmain (argc=3, argv=0x7fffffffded8) at main.cpp:27for (auto i = 0; i < 10; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) n第0个编号string s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 10; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) n第1个编号string s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 10; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) n第2个编号string s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 10; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) n第3个编号string s = "第" + to_string(i)+ "个编号";(gdb) untilfor (auto i = 0; i < 10; ++i)(gdb) 第4个编号第5个编号第6个编号第7个编号第8个编号第9个编号return 0;(gdb) qA debugging session is active. Inferior 1 [process 1959176] will be killed. Quit anyway? (y or n) y[devuser@Rocky8-online gdb调试]$调试core文件如果程序在运行时发生了内存错误,会被内核强行终止,提示“段错误”,内存的状态可保存在core文件中,方便进一步分析查找问题。 注:默认情况下,不会生成core文件,需要修改系统参数。 调试方式如下:首先使用ulimit -a查看系统限制参数[devuser@Rocky8-online gdb调试]$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 6955 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 262144 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 6955 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited使用ulimit -c unlimited把core file size改为unlimited运行程序,产生core文件运行gdb target-program core-file在gdb中,使用bt查看函数调用栈示例源码#include <iostream> #include <string> #include <cstring> using namespace std; void func(int i, string &s) { cout << "i = " << i << " s = " << s << endl; } void corefunc() { char *p = nullptr; *p = 'A'; strcpy(p, "cplusplus"); cout << "p = " << p << endl; } int main(int argc, char *argv[]) { if (argc != 3) { cout << "执行方式:test 编号 姓名" << endl; cout << "如:test 100 张三" << endl; return -1; } int i = stoi(argv[1]); string s = argv[2]; func(i, s); func(i, s); corefunc(); for (auto i = 0; i < 10; ++i) { string s = "第" + to_string(i)+ "个编号"; cout << s << endl; } return 0; }调试过程 使用systemd的系统不会直接产生core文件,可按如下方法使用coredumpctl命令生成[devuser@Rocky8-online gdb调试]$ cat /proc/sys/kernel/core_pattern |/usr/lib/systemd/systemd-coredump %P %u %g %s %t %c %h %e [devuser@Rocky8-online gdb调试]$ coredumpctl TIME PID UID GID SIG COREFILE EXE Sat 2024-11-09 16:12:16 CST 1959992 1000 1000 11 present /home/devuser/workspace/c_c++/test/gdb调试/test Sat 2024-11-09 16:16:17 CST 1960127 1000 1000 11 present /home/devuser/workspace/c_c++/test/gdb调试/test Sat 2024-11-09 16:22:23 CST 1960569 1000 1000 11 present /home/devuser/workspace/c_c++/test/gdb调试/test [devuser@Rocky8-online gdb调试]$ coredumpctl -o core dump 1960569 PID: 1960569 (test) UID: 1000 (devuser) GID: 1000 (devuser) Signal: 11 (SEGV) Timestamp: Sat 2024-11-09 16:22:23 CST (7min ago) Command Line: ./test 100 Executable: /home/devuser/workspace/c_c++/test/gdb调试/test Control Group: /user.slice/user-1000.slice/session-727.scope Unit: session-727.scope Slice: user-1000.slice Session: 727 Owner UID: 1000 (devuser) Boot ID: 3715d4f161824bbf9481b064cc42f893 Machine ID: 74da068e81f448da853c64463d64e826 Hostname: Rocky8-online Storage: /var/lib/systemd/coredump/core.test.1000.3715d4f161824bbf9481b064cc42f893.1960569.1731140543000000.lz4 Message: Process 1960569 (test) of user 1000 dumped core. Stack trace of thread 1960569: #0 0x00000000004017b7 n/a (/home/devuser/workspace/c_c++/test/gdb调试/test) #1 0x0000000000401936 n/a (/home/devuser/workspace/c_c++/test/gdb调试/test) #2 0x00007f182025d7e5 __libc_start_main (libc.so.6) #3 0x000000000040168e n/a (/home/devuser/workspace/c_c++/test/gdb调试/test) [devuser@Rocky8-online gdb调试]$ ls -l total 704 -rw-rw-r--. 1 devuser devuser 499712 Nov 9 16:29 core drwxrwxr-x. 2 devuser devuser 6 Nov 9 15:12 include drwxrwxr-x. 2 devuser devuser 6 Nov 9 15:12 lib -rw-rw-r--. 1 devuser devuser 724 Nov 9 16:11 main.cpp -rw-rw-r--. 1 devuser devuser 117328 Nov 9 16:12 main.o -rw-rw-r--. 1 devuser devuser 1428 Nov 9 15:43 Makefile -rwxrwxr-x. 1 devuser devuser 92672 Nov 9 16:12 test[devuser@Rocky8-online gdb调试]$ gdb test core GNU gdb (GDB) Rocky Linux 8.2-20.el8.0.1 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: --Type <RET> for more, q to quit, c to continue without paging-- <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from test...done. [New LWP 1960569] Core was generated by `./test 100 张三'. Program terminated with signal SIGSEGV, Segmentation fault.*p = 'A';Missing separate debuginfos, use: yum debuginfo-install glibc-2.28-251.el8_10.2.x86_64 libgcc-8.5.0-22.el8_10.x86_64 libstdc++-8.5.0-22.el8_10.x86_64(gdb) bt0 0x00000000004017b7 in corefunc () at main.cpp:151 0x0000000000401936 in main (argc=3, argv=0x7fff0d021a78) at main.cpp:36(gdb)调试正在运行中的程序gdb target-program -p pid示例源码#include <iostream> #include <chrono> #include <thread> using namespace std; int main(int argc, char *argv[]) { for (auto i = 0; i < 1000000; ++i) { string s = "第" + to_string(i)+ "个编号"; cout << s << endl; std::this_thread::sleep_for(std::chrono::seconds(5)); } return 0; }调试过程[devuser@Rocky8-online gdb调试]$ ps -ef | grep test devuser 1954586 1952692 0 13:35 pts/0 00:00:00 gdb test devuser 1962014 1954938 0 19:00 pts/1 00:00:00 ./test devuser 1962280 1962066 0 19:01 pts/2 00:00:00 grep --color=auto test [devuser@Rocky8-online gdb调试]$ gdb test -p 1962014 GNU gdb (GDB) Rocky Linux 8.2-20.el8.0.1 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: --Type <RET> for more, q to quit, c to continue without paging-- <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from test...done. Attaching to program: /home/devuser/workspace/c_c++/test/gdb调试/test, process 1962014 Reading symbols from /lib64/libstdc++.so.6...Reading symbols from .gnu_debugdata for /lib64/libstdc++.so.6...(no debugging symbols found)...done. (no debugging symbols found)...done. Reading symbols from /lib64/libm.so.6...Reading symbols from .gnu_debugdata for /lib64/libm.so.6...(no debugging symbols found)...done. (no debugging symbols found)...done. Reading symbols from /lib64/libgcc_s.so.1...Reading symbols from .gnu_debugdata for /lib64/libgcc_s.so.1...(no debugging symbols found)...done. (no debugging symbols found)...done. Reading symbols from /lib64/libc.so.6...(no debugging symbols found)...done. Reading symbols from /lib64/ld-linux-x86-64.so.2...done. 0x00007fdb54a00068 in nanosleep () from /lib64/libc.so.6 Missing separate debuginfos, use: yum debuginfo-install glibc-2.28-251.el8_10.2.x86_64 libgcc-8.5.0-22.el8_10.x86_64 libstdc++-8.5.0-22.el8_10.x86_64 (gdb) n Single stepping until exit from function nanosleep, which has no line number information.while (::nanosleep(&__ts, &__ts) == -1 && errno == EINTR)(gdb) n}(gdb) nmain (argc=1, argv=0x7ffef61ed998) at main.cpp:11string s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 1000000; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) nstd::this_thread::sleep_for(std::chrono::seconds(5));(gdb) nnnstring s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 1000000; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) nstd::this_thread::sleep_for(std::chrono::seconds(5));(gdb) nnnnnstring s = "第" + to_string(i)+ "个编号";(gdb) nfor (auto i = 0; i < 1000000; ++i)(gdb) nstring s = "第" + to_string(i)+ "个编号";(gdb) ncout << s << endl;(gdb) nstd::this_thread::sleep_for(std::chrono::seconds(5));(gdb) cContinuing.
2024年11月09日
17 阅读
0 评论
0 点赞
2024-10-24
C++运算符优先级表
结合律运算符功能用法举例左::全局作用域::name 左::类作用域class::name 左::命名空间作用域namespace::name ———————————————————————————————————————左.成员选择object.member 左->成员选择pointer->member 左[]下标expr[expr] 左()函数调用name(expr_list) 左()类型构造type(expr_list) ———————————————————————————————————————右++后置递增运算lvalue++ 右--后置递减运算lvalue-- 右typeid类型IDtypeid(type) 右typeid运行时类型IDtypeid(expr) 右static_cast const_cast dynamic_cast reinterpret_cast类型转换cast_name\<type\>(expr) ———————————————————————————————————————右++前置递增运算++lvalue 右--前置递减运算--lvalue 右~按位求反~expr 右!逻辑非!expr 右-一元负号-expr 右+一元正号+expr 右*解引用*expr 右&取地址&lvalue 右()类型转换(type)expr 右sizeof对象的大小sizeof expr 右sizeof类型的大小sizeof(type) 右Sizeof...参数包的大小sizeof...(name) 右new创建对象new type 右new[]创建数组new type[size] 右delete释放对象delete expr 右delete[]释放数组delete[] expr 右noexcept能否抛出异常noexcept(expr) ———————————————————————————————————————左->*指向成员选择的指针ptr->*ptr_to_member 左.*指向成员选择的指针obj.*ptr_to_member ———————————————————————————————————————左*乘法expr * expr 左/除法expr / expr 左%取模(取余)expr % expr ———————————————————————————————————————左+加法expr + expr 左-减法expr - expr ———————————————————————————————————————左<<向左移位expr << expr 左>>向右移位expr >> expr ———————————————————————————————————————左<小于expr < expr 左<=小于等于expr <= expr 左>大于expr > expr 左>=大于等于expr >= expr ———————————————————————————————————————左==相等expr == expr 左!=不相等expr != expr ———————————————————————————————————————左&按位与expr & expr ———————————————————————————————————————左^位异或expr ^ expr ———————————————————————————————————————左\ 按位或expr \expr ———————————————————————————————————————左&&逻辑与expr && expr ———————————————————————————————————————左\\ 逻辑或expr \\expr ———————————————————————————————————————右? :条件表达式expr ? expr : expr ———————————————————————————————————————右=赋值lvalue = expr ———————————————————————————————————————右*=, /=, %= +=, -= <<=, >>= &=, \=, ^=复合赋值lvalue += expr等 右throw抛出异常throw expr ———————————————————————————————————————左,逗号表达式expr,expr
2024年10月24日
8 阅读
0 评论
0 点赞
2024-10-16
C++初学-模板编程的实例应用
背景说明以下程序整理于<>中的以template进行编程的篇章。主要实现了一个基础的二叉查找树。类的设计二叉树包含两个类:一个是 BinaryTree,用于存储一个指针,指向根节点;另一个是 BTnode,用来存储节点值,以及连接左右两个子节点。节点值的类型即为参数化的部分。其中 BinaryTree是提供给客户使用的类,包含以下可用操作:插入元素(insert)、移除元素(remove)、查找元素(find)、清除二叉树(clear)、打印二叉树(前序、中序、后序)。实现BinaryTree.h#ifndef BINARYTREE_H_INCLUDED #define BINARYTREE_H_INCLUDED #include <iostream> using uint_t = unsigned int; // 类模板前置声明 template <class elemType> class BinaryTree; template <class valType> class BTnode; template <class valType> class BTnode { friend class BinaryTree<valType>; public: // 普通构造函数,节点值为val BTnode(const valType &val); // 析构函数 ~BTnode(); // 插入一个新节点,节点值为val void insert_value(const valType &val); // 移除一个节点,节点值为val,父节点为prev void remove_value(const valType &val, BTnode * &prev); // 查找一个结点,节点值为val bool find_value(const valType &val) const; // 前序打印:节点本身-左子节点-右子节点 void preorder(BTnode *pt, std::ostream &os) const; // 中序打印:左子节点-节点本身-右子节点 void inorder(BTnode *pt, std::ostream &os) const; // 后序打印:左子节点-右子节点-节点本身 void postorder(BTnode *pt, std::ostream &os) const; // 获取节点值 const valType& value() const { return _val; } // 获取节点值出现次数 uint_t occurs() const { return _cnt; } // 遍历subtree节点下的左子树,将leaf接为最下层的叶子节点 static void lchild_leaf(BTnode *leaf, BTnode *subtree); private: // 拷贝构造函数 BTnode(const BTnode &rhs); // 赋值运算符重载函数 BTnode& operator=(const BTnode &rhs); // 打印节点值 void display_val(BTnode *pt, std::ostream &os) const; private: // 节点值 valType _val; // 节点值出现次数 uint_t _cnt; // 指向左子节点 BTnode *_lchild; // 指向右子节点 BTnode *_rchild; }; template <typename valType> inline BTnode<valType>:: BTnode(const valType& val) : _val(val), _cnt(1), _lchild(nullptr), _rchild(nullptr) { *(BinaryTree<valType>::getOutStream()) << "调用普通构造函数BTnode<valType>::BTnode(const valType& val)" << std::endl; } template <typename valType> inline BTnode<valType>:: BTnode(const BTnode &rhs) : _val(rhs._val), _cnt(1), _lchild(nullptr), _rchild(nullptr) { *(BinaryTree<valType>::getOutStream()) << "调用拷贝构造函数BTnode<valType>::BTnode(const BTnode &rhs)" << std::endl; } template <typename valType> inline BTnode<valType>& BTnode<valType>:: operator=(const BTnode &rhs) { _val = rhs._val; _cnt = 1; _lchild = nullptr; _rchild = nullptr; *(BinaryTree<valType>::getOutStream()) << "调用赋值运算符重载函数BTnode<valType>::BTnode(const BTnode &rhs)" << std::endl; } template <typename valType> inline BTnode<valType>:: ~BTnode() { *(BinaryTree<valType>::getOutStream()) << "调用析构函数BTnode<valType>::~BTnode()" << std::endl; } template <typename valType> void BTnode<valType>:: insert_value(const valType &val) { if (val == _val) { ++_cnt; return; } else if (val < _val) { if (_lchild) _lchild->insert_value(val); else _lchild = new BTnode(val); } else { if (_rchild) _rchild->insert_value(val); else _rchild = new BTnode(val); } } template <typename valType> void BTnode<valType>:: lchild_leaf(BTnode *leaf, BTnode *subtree) { while (subtree->_lchild) subtree = subtree->_lchild; subtree->_lchild = leaf; } template <typename valType> void BTnode<valType>:: remove_value(const valType &val, BTnode * &prev) { // 算法: // 以删除节点的右子节点取代删除节点本身 // 若无右子节点,就以左子节点取代删除节点本身 // 搬移左子节点,使其成为右子节点的左子树的叶节点 if (val == _val) { if (_rchild) { prev = _rchild; if (_lchild) { if (prev->_lchild) BTnode<valType>::lchild_leaf(_lchild, prev->_lchild); else prev->_lchild = _lchild; } } else { prev = _lchild; } delete this; } else if (val < _val) { if (_lchild) _lchild->remove_value(val, _lchild); } else { if (_rchild) _rchild->remove_value(val, _rchild); } } template <typename valType> bool BTnode<valType>:: find_value(const valType &val) const { if (val == _val) { return true; } else if (val < _val) { if (_lchild) return _lchild->find_value(val); else return false; } else { if (_rchild) return _rchild->find_value(val); else return false; } } template <typename valType> void BTnode<valType>:: preorder(BTnode *pt, std::ostream &os) const { if (pt) { // 节点本身-左子节点-右子节点 display_val(pt, os); if (pt->_lchild) preorder(pt->_lchild, os); if (pt->_rchild) preorder(pt->_rchild, os); } } template <typename valType> void BTnode<valType>:: inorder(BTnode *pt, std::ostream &os) const { if (pt) { // 左子节点-节点本身-右子节点 if (pt->_lchild) inorder(pt->_lchild, os); display_val(pt, os); if (pt->_rchild) inorder(pt->_rchild, os); } } template <typename valType> void BTnode<valType>:: postorder(BTnode *pt, std::ostream &os) const { if (pt) { // 左子节点-右子节点-节点本身 if (pt->_lchild) postorder(pt->_lchild, os); if (pt->_rchild) postorder(pt->_rchild, os); display_val(pt, os); } } template <typename valType> void BTnode<valType>:: display_val(BTnode *pt, std::ostream &os) const { if (pt) { os << pt->_val; if (pt->_cnt > 1) os << "(" << pt->_cnt << ") "; else os << ' '; } } template <class elemType> class BinaryTree { public: // 默认构造函数 BinaryTree(); // 拷贝构造函数 BinaryTree(const BinaryTree &rhs); // 赋值运算符重载函数 BinaryTree& operator=(const BinaryTree &rhs); // 析构函数 ~BinaryTree(); // 插入新节点,节点值为elem void insert(const elemType& elem); // 移除节点,节点值为elem void remove(const elemType &elem); // 查找节点是否在二叉树,节点值为val bool find(const elemType &val) const; // 二叉树是否为空 bool empty() { return (nullptr == _root); } // 清除整个二叉树 void clear() { clear(_root); _root = nullptr; } // 前序打印:节点本身-左子节点-右子节点 void preorder(std::ostream &os = *_current_os) const { _root->preorder(_root, os); os << std::endl; } // 中序打印:左子节点-节点本身-右子节点 void inorder(std::ostream &os = *_current_os) const { _root->inorder(_root, os); os << std::endl; } // 后序打印:左子节点-右子节点-节点本身 void postorder(std::ostream &os = *_current_os) const { _root->postorder(_root, os); os << std::endl; } // 获取当前输出流 static std::ostream* getOutStream() { return _current_os; } // 设置当前输出流 static void setOutStream(std::ostream *os) { if (os) _current_os = os; } private: // 将src指向的子树复制到tar指向的子树 void copy(BTnode<elemType> *&tar, const BTnode<elemType> *src); // 清除二叉树 void clear(BTnode<elemType> *pt); // 移除根节点 void remove_root(); private: // 指向二叉树根节点 BTnode<elemType> *_root; // 指向输出流 static std::ostream *_current_os; }; template <typename elemType> inline BinaryTree<elemType>:: BinaryTree() : _root(nullptr) { *_current_os << "调用默认构造函数BinaryTree<elemType>::BinaryTree()" << std::endl; } template <typename elemType> inline BinaryTree<elemType>:: BinaryTree(const BinaryTree &rhs) { copy(_root, rhs._root); *_current_os << "调用拷贝构造函数BinaryTree<elemType>::BinaryTree(const BinaryTree &rhs)" << std::endl; } template <typename elemType> inline BinaryTree<elemType>& BinaryTree<elemType>:: operator=(const BinaryTree &rhs) { if (this != &rhs) { clear(); copy(_root, rhs._root); } *_current_os << "调用赋值运算符重载函数BinaryTree<elemType>::operator=(const BinaryTree &rhs)" << std::endl; return *this; } template <typename elemType> inline BinaryTree<elemType>:: ~BinaryTree() { clear(); *_current_os << "调用析构函数BinaryTree<elemType>::~BinaryTree()" << std::endl; } template <typename elemType> void BinaryTree<elemType>:: insert(const elemType &elem) { if (_root) _root->insert_value(elem); else _root = new BTnode<elemType>(elem); } template <typename elemType> void BinaryTree<elemType>:: remove(const elemType &elem) { if (_root) { if (elem == _root->_val) remove_root(); else _root->remove_value(elem, _root); } } template <typename elemType> bool BinaryTree<elemType>:: find(const elemType &elem) const { if (_root) { return _root->find_value(elem); } else { return false; } } template <typename elemType> void BinaryTree<elemType>:: remove_root() { // 算法: // 以删除节点的右子节点取代删除节点本身 // 若无右子节点,就以左子节点取代删除节点本身 // 搬移左子节点,使其成为右子节点的左子树的叶节点 if (_root) { BTnode<elemType> * const oldroot = _root; if (oldroot->_rchild) { _root = oldroot->_rchild; BTnode<elemType> *oldlc = oldroot->_lchild; BTnode<elemType> *newlc = _root->_lchild; if (oldlc) { if (newlc) BTnode<elemType>::lchild_leaf(oldlc, newlc); else _root->_lchild = oldlc; } } else { _root = oldroot->_lchild; } delete oldroot; } } template <typename elemType> void BinaryTree<elemType>:: clear(BTnode<elemType> *pt) { if (pt) { clear(pt->_lchild); clear(pt->_rchild); delete pt; } } template <typename elemType> void BinaryTree<elemType>:: copy(BTnode<elemType> *&tar, const BTnode<elemType> *src) { if (src) { tar = new BTnode<elemType>(src->val); if (src->_lchild) copy(tar->_lchild, src->_lchild); if (src->_rchild) copy(tar->_rchild, src->_rchild); } } #endif // BINARYTREE_H_INCLUDEDmain.cpp#include "BinaryTree.h" #include <string> #include <fstream> template<typename elemType> std::ostream *BinaryTree<elemType>::_current_os = &std::cout; const std::string log_file = "logfile.txt"; int main() { std::ofstream log(log_file); if (!log) { std::cerr << "错误:无法打开文件[" << log_file << "]" << std::endl; return -1; } else { BinaryTree<std::string>::setOutStream(&log); } BinaryTree<std::string> bt; if (bt.empty()) { log << "二叉树为空" << std::endl; } else { log << "二叉树不为空" << std::endl; log << "前序: "; bt.preorder(log); log << "中序: "; bt.inorder(log); log << "后序: "; bt.postorder(log); } bt.insert("Piglet"); bt.insert("Eeyore"); bt.insert("Roo"); bt.insert("Tigger"); bt.insert("Chris"); bt.insert("Chris"); bt.insert("Chris"); bt.insert("Pooh"); bt.insert("Kanga"); log << "前序: "; bt.preorder(log); log << "中序: "; bt.inorder(log); log << "后序: "; bt.postorder(log); bt.remove("Piglet"); log << "前序: "; bt.preorder(log); log << "中序: "; bt.inorder(log); log << "后序: "; bt.postorder(log); bt.remove("Roo"); log << "前序: "; bt.preorder(log); log << "中序: "; bt.inorder(log); log << "后序: "; bt.postorder(log); if (bt.find("Kanga")) { log << "存在Kanga" << std::endl; } else { log << "不存在Kanga" << std::endl; } if (bt.find("hsy")) { log << "存在hsy" << std::endl; } else { log << "不存在hsy" << std::endl; } bt.clear(); if (bt.empty()) { log << "二叉树为空" << std::endl; } else { log << "二叉树不为空" << std::endl; bt.preorder(log); bt.inorder(log); bt.postorder(log); } return 0; }运行结果如下调用默认构造函数BinaryTree<elemType>::BinaryTree() 二叉树为空 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 调用普通构造函数BTnode<valType>::BTnode(const valType& val) 前序: Piglet Eeyore Chris(3) Kanga Roo Pooh Tigger 中序: Chris(3) Eeyore Kanga Piglet Pooh Roo Tigger 后序: Chris(3) Kanga Eeyore Pooh Tigger Roo Piglet 调用析构函数BTnode<valType>::~BTnode() 前序: Roo Pooh Eeyore Chris(3) Kanga Tigger 中序: Chris(3) Eeyore Kanga Pooh Roo Tigger 后序: Chris(3) Kanga Eeyore Pooh Tigger Roo 调用析构函数BTnode<valType>::~BTnode() 前序: Tigger Pooh Eeyore Chris(3) Kanga 中序: Chris(3) Eeyore Kanga Pooh Tigger 后序: Chris(3) Kanga Eeyore Pooh Tigger 存在Kanga 不存在hsy 调用析构函数BTnode<valType>::~BTnode() 调用析构函数BTnode<valType>::~BTnode() 调用析构函数BTnode<valType>::~BTnode() 调用析构函数BTnode<valType>::~BTnode() 调用析构函数BTnode<valType>::~BTnode() 二叉树为空 调用析构函数BinaryTree<elemType>::~BinaryTree()
2024年10月16日
3 阅读
0 评论
0 点赞
2024-10-11
C++初学-封装继承多态的实例应用
背景说明以下程序整理于<>中的面向对象编程风格的篇章,这个章节中展示的代码在某些地方其实是有问题的,例如有些常成员函数的声明其实是不能声明为常成员函数的,也可能是我理解不到位。不管怎样,本人结合作者的意图对其进行了部分修改做出一个能实际运行的程序就算成功。类的设计程序主要功能是计算出斐波那契数列某一位置的元素值,还包括其他一些基本功能,例如返回该数列是哪一种类型(此处只实现了斐波那契数列,实际数列有很多,可做引申)、数列的起始位置、数列的长度、可容纳元素的最大大小、打印数列所有元素。基类num_sequence.h#ifndef NUM_SEQUENCE_H_INCLUDED #define NUM_SEQUENCE_H_INCLUDED #include <iostream> #include <vector> #include <typeinfo> // 声明命名空间 namespace mycpp { // C++11支持使用using为类型取别名 // 可取代老式的typedef // typedef unsigned int uint_t; using uint_t = unsigned int; // 常量 const int * const NULLPTR = NULL; // 基类,抽象类(含有纯虚函数) class num_sequence { protected: // 默认构造函数 num_sequence(); // 构造函数 num_sequence(uint_t length, uint_t beg_pos, std::vector<uint_t> &relems); public: // 拷贝构造函数 num_sequence(const num_sequence &rhs); // 赋值运算符重载函数 // 返回引用可使用链式赋值同时避免构造临时对象,减少系统开销 num_sequence& operator=(const num_sequence &rhs); // 析构函数 // 基类的析构函数需要声明为虚函数 // 声明虚函数的目的是告诉编译器在运行时动态的根据基类指针实际指向的对象来执行相应的析构函数 // 未申明为虚函数的话,基类指针无论是否指向派生类,其析构函数都在编译期就被静态解析为基类的析构函数 virtual ~num_sequence(); public: // 返回数列类型名称 // 常成员函数(执行过程中不会改变对象) const char* what_am_i() const; // 返回pos上的元素 uint_t elem(uint_t pos); // 返回数列长度 //常成员函数(执行过程中不会改变对象) uint_t length() const; // 返回数列起始位置值 // 常成员函数(执行过程中不会改变对象) uint_t beg_pos() const; // 返回数列所支持的最大位置值 // 静态成员函数(所有类共享一份,并不专属于哪个类的对象) static uint_t max_elems(); // 将所有元素输出到os // 函数默认参数,默认为标准输出 // 返回引用可使用链式输出同时避免构造临时对象,减少系统开销 std::ostream& print(std::ostream &os = std::cout) const; protected: // 产生直到pos位置的元素 // 纯虚函数,基类没有实现的必要,仅提供接口,依赖派生类来实现 virtual void gen_elems(uint_t pos) = 0; // 检查pos位置是否为有效位置 bool check_integrity(uint_t pos); protected: // 数列长度 uint_t _length; // 数列起始位置,从1开始计数 uint_t _beg_pos; // 元素最大个数 // 静态成员、常量 // C++11支持常量表达式 static constexpr uint_t _max_elems = 1024; // 数列派生类的容器的引用 std::vector<uint_t> &_relems; }; // 内联函数(建议编译器在函数调用处直接展开,减少函数调用开销) inline uint_t num_sequence::length() const { return _length; } inline uint_t num_sequence::beg_pos() const { return _beg_pos; } inline uint_t num_sequence::max_elems() { return _max_elems; } inline std::ostream& operator<<(std::ostream &os, const num_sequence &ns) { return ns.print(os); } } // namespace mycpp #endif // NUM_SEQUENCE_H_INCLUDEDnum_sequence.cpp#include "num_sequence.h" // 使用命名空间 // using namespace mycpp; // 全局作用域 using mycpp::num_sequence; // 单个指定 using mycpp::uint_t; // 单个指定 // 构造函数使用初始化列表 // 这里_relems强行绑定了一个空对象,无实际意义,仅演示默认构造函数 // 1.无参的构造函数 // 2.全部参数都有默认参数的构造函数 // 3.未实现自定义构造函数时编译器会自动生成默认构造函数 num_sequence::num_sequence() : _length(1), _beg_pos(1), _relems((std::vector<uint_t>&)(*NULLPTR)) { std::cout << "调用构造函数num_sequence::num_sequence()" << std::endl; } // 构造函数使用初始化列表 num_sequence::num_sequence(uint_t length, uint_t beg_pos, std::vector<uint_t> &relems) : _length(length), _beg_pos(beg_pos), _relems(relems) { std::cout << "调用构造函数num_sequence::num_sequence(uint_t length, uint_t beg_pos, std::vector<uint_t> &relems)" << std::endl; } // 构造函数使用初始化列表 //num_sequence::num_sequence(const num_sequence &rhs) : // _length(rhs.length), // _beg_pos(rhs.beg_pos), // _relems(rhs.relems) // C++11支持构造函数使用委托构造 num_sequence::num_sequence(const num_sequence &rhs) : num_sequence(rhs._length, rhs._beg_pos, rhs._relems) { std::cout << "调用拷贝构造函数num_sequence::num_sequence(const num_sequence &rhs)" << std::endl; } num_sequence& num_sequence::operator=(const num_sequence &rhs) { if (this != &rhs) // 避免自我赋值 { _length = rhs._length; _beg_pos = rhs._beg_pos; _relems = rhs._relems; } std::cout << "调用赋值运算符重载函数num_sequence::operator=(const num_sequence &rhs)" << std::endl; return *this; } num_sequence::~num_sequence() { std::cout << "调用析构函数num_sequence::~num_sequence()" << std::endl; } const char* num_sequence::what_am_i() const { // typeid运算符允许在运行时确定对象的类型,可用来确定是基类还是派生类 // typeid运算符的返回值类型为const type_info& return typeid(*this).name(); } uint_t num_sequence::elem(uint_t pos) { if (!check_integrity(pos)) { return 0; } return _relems[(_beg_pos - 1) + (pos - 1)]; } std::ostream& num_sequence::print(std::ostream &os) const { os << "当前的数列元素:"; if (_relems.size()) { for (uint_t i = _beg_pos - 1; i < _beg_pos + _length - 1; i++) { os << _relems[i] << ' '; } } os << std::endl; return os; } bool num_sequence::check_integrity(uint_t pos) { if (pos <= 0 || pos > _max_elems) { std::cerr << "无效的位置:" << pos << "无法处理请求" << std::endl; return false; } if (pos > _relems.size()) { gen_elems(pos); } return true; }派生类fibonacci.h#ifndef FIBONACCI_H_INCLUDED #define FIBONACCI_H_INCLUDED #include "num_sequence.h" // 声明命名空间 namespace mycpp { // 派生类 class Fibonacci : public num_sequence { public: // 默认构造函数 // 无参或所有参数都有默认参数的构造函数 Fibonacci(uint_t length = 1, uint_t beg_pos = 1); // 拷贝构造函数 Fibonacci(const Fibonacci &rhs); // 赋值运算符重载函数 // 返回引用可使用链式赋值同时避免构造临时对象,减少系统开销 Fibonacci& operator=(const Fibonacci &rhs); // 析构函数 ~Fibonacci(); protected: // 产生直到pos位置的元素 // C++11支持使用override说明符指明该虚函数重写基类的虚函数 virtual void gen_elems(uint_t pos) override; protected: // 数列容器 // 静态成员变量(此处是声明,需要在类外定义) static std::vector<uint_t> _elems; }; // 内联函数(建议编译器在函数调用处直接展开,减少函数调用开销) // 构造函数使用初始化列表 // 此处使用基类的构造函数并不是委托构造 inline Fibonacci::Fibonacci(uint_t length, uint_t beg_pos) : num_sequence(length, beg_pos, _elems) { std::cout << "调用构造函数Fibonacci::Fibonacci(uint_t length, uint_t beg_pos)" << std::endl; } inline Fibonacci::Fibonacci(const Fibonacci &rhs) : num_sequence(rhs) { std::cout << "调用拷贝构造函数Fibonacci::Fibonacci(const Fibonacci &rhs)" << std::endl; } inline Fibonacci& Fibonacci::operator=(const Fibonacci &rhs) { if (this != &rhs) // 避免自我赋值 { // 明确调用基类的拷贝赋值函数 num_sequence::operator=(rhs); } std::cout << "调用赋值运算符重载函数Fibonacci& Fibonacci::operator=(const Fibonacci &rhs)" << std::endl; return *this; } inline Fibonacci::~Fibonacci() { std::cout << "调用析构函数Fibonacci::~Fibonacci()" << std::endl; } } // namespace mycpp #endif // FIBONACCI_H_INCLUDEDfibonacci.cpp#include "fibonacci.h" // 使用命名空间 // using namespace mycpp; // 全局作用域 using mycpp::num_sequence; // 单个指定 using mycpp::Fibonacci; // 单个指定 using mycpp::uint_t; // 单个指定 std::vector<uint_t> Fibonacci::_elems; void Fibonacci::gen_elems(uint_t pos) { // 首次生成数列元素 // 从_beg_pos开始的_length个数列元素 if (_elems.empty()) { _elems.push_back(1); _elems.push_back(1); uint_t end = _beg_pos + _length; uint_t i_2 = _elems[0]; uint_t i_1 = _elems[1]; for (uint_t i = 2 ; i < end; ++i) { uint_t elem = i_2 + i_1; _elems.push_back(elem); i_2 = i_1; i_1 = elem; } } // 继续生成不足pos位置的数列元素 if (_elems.size() < pos + _beg_pos) { uint_t end = _elems.size(); uint_t i_2 = _elems[end - 2]; uint_t i_1 = _elems[end - 1]; for (; end < pos + _beg_pos; ++end) { uint_t elem = i_2 + i_1; _elems.push_back(elem); _length++; i_2 = i_1; i_1 = elem; } } }测试程序main.cpp#include <iostream> #include "fibonacci.h" using namespace mycpp; int main() { std::cout << "sizeof(num_sequence)=" << sizeof(num_sequence) << std::endl; // sizeof(num_sequence)=24 std::cout << "sizeof(Fibonacci)=" << sizeof(Fibonacci) << std::endl; // sizeof(Fibonacci)=24 std::cout << "num_sequence::max_elems() = " << num_sequence::max_elems() << std::endl; // num_sequence::max_elems() = 1024 // error 不允许使用抽象类型的对象 // num_sequence *pbase = new num_sequence(); // 基类的指针指向派生类,可形成动态多态 num_sequence *pnum = new Fibonacci(10, 3); // 调用构造函数num_sequence::num_sequence(uint_t length, uint_t beg_pos, std::vector<uint_t> &relems) // 调用构造函数Fibonacci::Fibonacci(uint_t length, uint_t beg_pos) // RTTI(Run-Time Type Identification 运行时类型鉴定机制) if (typeid(*pnum) == typeid(Fibonacci)) { std::cout << "pnum指向的对象是Fibonacci类型" << std::endl; } else { std::cout << "pnum指向的对象是其他类型" << std::endl; } // pnum指向的对象是Fibonacci类型 if (dynamic_cast<Fibonacci *>(pnum)) { std::cout << "pnum指向的对象是Fibonacci类型" << std::endl; } else { std::cout << "pnum指向的对象是其他类型" << std::endl; } // pnum指向的对象是Fibonacci类型 // 强制转换,编译器无法确认是否安全,程序员需要明白这是在干什么 if (static_cast<Fibonacci *>(pnum)) { std::cout << "pnum指向的对象是Fibonacci类型" << std::endl; } else { std::cout << "pnum指向的对象是其他类型" << std::endl; } std::cout << "pnum->what_am_i() = " << pnum->what_am_i() << std::endl; // pnum->what_am_i() = N5mycpp9FibonacciE std::cout << "pnum->beg_pos() = " << pnum->beg_pos() << std::endl; // pnum->beg_pos() = 3 std::cout << "pnum->length() = " << pnum->length() << std::endl; // pnum->length() = 10 pnum->print(); // 当前的数列元素: std::cout << "pnum->elem(10) = " << pnum->elem(10) << std::endl; // pnum->elem(10) = 144 std::cout << "pnum->beg_pos() = " << pnum->beg_pos() << std::endl; // pnum->beg_pos() = 3 std::cout << "pnum->length() = " << pnum->length() << std::endl; // pnum->length() = 10 pnum->print(); // 当前的数列元素:2 3 5 8 13 21 34 55 89 144 std::cout << "pnum->elem(30) = " << pnum->elem(30) << std::endl; // pnum->elem(30) = 2178309 std::cout << "pnum->beg_pos() = " << pnum->beg_pos() << std::endl; // pnum->beg_pos() = 3 std::cout << "pnum->length() = " << pnum->length() << std::endl; // pnum->length() = 30 pnum->print(); // 当前的数列元素:2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657 46368 75025 121393 196418 317811 514229 832040 1346269 2178309 delete pnum; // 调用析构函数Fibonacci::~Fibonacci() // 调用析构函数num_sequence::~num_sequence() return 0; }
2024年10月11日
3 阅读
0 评论
0 点赞
2024-09-06
Windows使用MSYS2安装GCC编译器记录
前言本文参考 Visual Studio Code 官方文档中 C++ 环境配置的部分章节,做出整理并记录。原文地址:https://code.visualstudio.com/docs/cpp/config-mingw#_prerequisites使用MSYS2在Windows安装C++编译器官网:https://www.msys2.org/下载地址:msys2-x86_64-20240727.exebase-devel官网介绍中安装了这个软件包,但是我感觉如果只是要一个 C++ 编译器的话,这个软件包不装也不影响编译。Administrator@VM-WIN10 MSYS ~ # pacman -S --needed base-devel resolving dependencies... looking for conflicting packages... Packages (13) binutils-2.42-1 bison-3.8.2-5 diffstat-1.66-1 diffutils-3.10-1 dos2unix-7.5.2-1 flex-2.6.4-3 m4-1.4.19-2 make-4.4.1-2 patch-2.7.6-2 pkgconf-2.1.1-1 texinfo-7.1-3 texinfo-tex-7.1-3 base-devel-2022.12-2 Total Download Size: 9.62 MiB Total Installed Size: 59.67 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... bison-3.8.2-5-x86_64 777.2 KiB 2.56 MiB/s 00:00 [###################################################################] 100% make-4.4.1-2-x86_64 507.6 KiB 1480 KiB/s 00:00 [###################################################################] 100% dos2unix-7.5.2-1-x86_64 446.5 KiB 1194 KiB/s 00:00 [###################################################################] 100% diffutils-3.10-1-x86_64 379.8 KiB 4.76 MiB/s 00:00 [###################################################################] 100% flex-2.6.4-3-x86_64 303.8 KiB 3.16 MiB/s 00:00 [###################################################################] 100% m4-1.4.19-2-x86_64 238.1 KiB 2.47 MiB/s 00:00 [###################################################################] 100% texinfo-7.1-3-x86_64 1423.6 KiB 2.70 MiB/s 00:01 [###################################################################] 100% patch-2.7.6-2-x86_64 96.8 KiB 1242 KiB/s 00:00 [###################################################################] 100% pkgconf-2.1.1-1-x86_64 61.8 KiB 792 KiB/s 00:00 [###################################################################] 100% diffstat-1.66-1-x86_64 29.1 KiB 310 KiB/s 00:00 [###################################################################] 100% binutils-2.42-1-x86_64 5.4 MiB 7.90 MiB/s 00:01 [###################################################################] 100% texinfo-tex-7.1-3-x86_64 25.4 KiB 180 KiB/s 00:00 [###################################################################] 100% base-devel-2022.12-2-any 2.4 KiB 22.1 KiB/s 00:00 [###################################################################] 100% Total (13/13) 9.6 MiB 11.2 MiB/s 00:01 [###################################################################] 100% (13/13) checking keys in keyring [###################################################################] 100% (13/13) checking package integrity [###################################################################] 100% (13/13) loading package files [###################################################################] 100% (13/13) checking for file conflicts [###################################################################] 100% (13/13) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/13) installing binutils [###################################################################] 100% ( 2/13) installing m4 [###################################################################] 100% ( 3/13) installing bison [###################################################################] 100% ( 4/13) installing diffstat [###################################################################] 100% ( 5/13) installing diffutils [###################################################################] 100% ( 6/13) installing dos2unix [###################################################################] 100% ( 7/13) installing flex [###################################################################] 100% ( 8/13) installing texinfo [###################################################################] 100% ( 9/13) installing texinfo-tex [###################################################################] 100% (10/13) installing make [###################################################################] 100% (11/13) installing patch [###################################################################] 100% Optional dependencies for patch ed: for patch -e functionality (12/13) installing pkgconf [###################################################################] 100% (13/13) installing base-devel [###################################################################] 100% :: Running post-transaction hooks... (1/1) Updating the info directory file... Administrator@VM-WIN10 MSYS ~ #编译工具链MSYS2 中可使用的 C++ 编译工具链很多,根据 MSYS2 安装后的目录来看大概分为3种:UCRT、mingw、clang 。其中 mingw 和 clang 又按系统架构细分为x86、arm,32位或者64位。我们选择其中一种即可。我按官方文档介绍安装的是 mingw-w64-ucrt-x86_64-toolchain。以下为各版本编译器安装过程记录,其中交叉编译工具链部分未安装ucrt64Administrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-ucrt-x86_64-toolchain :: There are 13 members in group mingw-w64-ucrt-x86_64-toolchain: :: Repository ucrt64 1) mingw-w64-ucrt-x86_64-binutils 2) mingw-w64-ucrt-x86_64-crt-git 3) mingw-w64-ucrt-x86_64-gcc 4) mingw-w64-ucrt-x86_64-gdb 5) mingw-w64-ucrt-x86_64-gdb-multiarch 6) mingw-w64-ucrt-x86_64-headers-git 7) mingw-w64-ucrt-x86_64-libmangle-git 8) mingw-w64-ucrt-x86_64-libwinpthread-git 9) mingw-w64-ucrt-x86_64-make 10) mingw-w64-ucrt-x86_64-pkgconf 11) mingw-w64-ucrt-x86_64-tools-git 12) mingw-w64-ucrt-x86_64-winpthreads-git 13) mingw-w64-ucrt-x86_64-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (40) mingw-w64-ucrt-x86_64-bzip2-1.0.8-3 mingw-w64-ucrt-x86_64-expat-2.6.2-1 mingw-w64-ucrt-x86_64-gcc-libs-14.1.0-3 mingw-w64-ucrt-x86_64-gettext-runtime-0.22.5-2 mingw-w64-ucrt-x86_64-gmp-6.3.0-2 mingw-w64-ucrt-x86_64-isl-0.26-1 mingw-w64-ucrt-x86_64-libffi-3.4.6-1 mingw-w64-ucrt-x86_64-libiconv-1.17-4 mingw-w64-ucrt-x86_64-libsystre-1.0.1-5 mingw-w64-ucrt-x86_64-libtre-git-r177.07e66d0-2 mingw-w64-ucrt-x86_64-mpc-1.3.1-2 mingw-w64-ucrt-x86_64-mpdecimal-4.0.0-1 mingw-w64-ucrt-x86_64-mpfr-4.2.1-2 mingw-w64-ucrt-x86_64-ncurses-6.4.20231217-1 mingw-w64-ucrt-x86_64-openssl-3.3.1-1 mingw-w64-ucrt-x86_64-python-3.11.9-1 mingw-w64-ucrt-x86_64-readline-8.2.010-1 mingw-w64-ucrt-x86_64-sqlite3-3.46.0-1 mingw-w64-ucrt-x86_64-tcl-8.6.13-1 mingw-w64-ucrt-x86_64-termcap-1.3.1-7 mingw-w64-ucrt-x86_64-tk-8.6.13-1 mingw-w64-ucrt-x86_64-tzdata-2024a-1 mingw-w64-ucrt-x86_64-windows-default-manifest-6.4-4 mingw-w64-ucrt-x86_64-xxhash-0.8.2-2 mingw-w64-ucrt-x86_64-xz-5.6.2-2 mingw-w64-ucrt-x86_64-zlib-1.3.1-1 mingw-w64-ucrt-x86_64-zstd-1.5.6-2 mingw-w64-ucrt-x86_64-binutils-2.42-2 mingw-w64-ucrt-x86_64-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-gcc-14.1.0-3 mingw-w64-ucrt-x86_64-gdb-15.1-1 mingw-w64-ucrt-x86_64-gdb-multiarch-15.1-1 mingw-w64-ucrt-x86_64-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-make-4.4.1-2 mingw-w64-ucrt-x86_64-pkgconf-1~2.2.0-1 mingw-w64-ucrt-x86_64-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-ucrt-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 116.34 MiB Total Installed Size: 855.70 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-ucrt-x86_64-gdb-multiarch-15.1-1-any 6.3 MiB 9.35 MiB/s 00:01 [###################################################################] 100% mingw-w64-ucrt-x86_64-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 3.85 MiB/s 00:02 [###################################################################] 100% mingw-w64-ucrt-x86_64-binutils-2.42-2-any 5.8 MiB 4.54 MiB/s 00:01 [###################################################################] 100% mingw-w64-ucrt-x86_64-gcc-14.1.0-3-any 43.4 MiB 12.2 MiB/s 00:04 [###################################################################] 100% mingw-w64-ucrt-x86_64-crt-git-12.0.0.r81.g90abf784a-1-any 4.4 MiB 3.43 MiB/s 00:01 [###################################################################] 100% mingw-w64-ucrt-x86_64-python-3.11.9-1-any 23.3 MiB 5.80 MiB/s 00:04 [###################################################################] 100% mingw-w64-ucrt-x86_64-gdb-15.1-1-any 3.8 MiB 10.6 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-tcl-8.6.13-1-any 2.7 MiB 6.59 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-openssl-3.3.1-1-any 7.3 MiB 1760 KiB/s 00:04 [###################################################################] 100% mingw-w64-ucrt-x86_64-tk-8.6.13-1-any 2018.8 KiB 7.02 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-ncurses-6.4.20231217-1-any 1813.2 KiB 8.09 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-sqlite3-3.46.0-1-any 1679.0 KiB 13.0 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-isl-0.26-1-any 1452.1 KiB 8.24 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-gcc-libs-14.1.0-3-any 1030.1 KiB 7.19 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-xz-5.6.2-2-any 756.9 KiB 6.78 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libiconv-1.17-4-any 719.2 KiB 4.98 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-zstd-1.5.6-2-any 636.4 KiB 6.68 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-gmp-6.3.0-2-any 578.5 KiB 4.01 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-mpfr-4.2.1-2-any 535.7 KiB 3.35 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-readline-8.2.010-1-any 411.5 KiB 2.58 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-tools-git-12.0.0.r81.g90abf784a-1-any 314.8 KiB 1841 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-gettext-runtime-0.22.5-2-any 297.3 KiB 2.06 MiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-tzdata-2024a-1-any 227.1 KiB 1611 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-expat-2.6.2-1-any 162.6 KiB 1478 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-mpdecimal-4.0.0-1-any 138.5 KiB 882 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-make-4.4.1-2-any 136.0 KiB 964 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-mpc-1.3.1-2-any 128.3 KiB 910 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-xxhash-0.8.2-2-any 104.2 KiB 833 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-zlib-1.3.1-1-any 92.1 KiB 845 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-pkgconf-1~2.2.0-1-any 84.5 KiB 1083 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libtre-git-r177.07e66d0-2-any 80.3 KiB 1030 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-bzip2-1.0.8-3-any 76.5 KiB 543 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libffi-3.4.6-1-any 43.1 KiB 251 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1-any 39.8 KiB 232 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 29.3 KiB 156 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-termcap-1.3.1-7-any 27.3 KiB 174 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 23.3 KiB 124 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libsystre-1.0.1-5-any 10.5 KiB 135 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1-any 22.4 KiB 118 KiB/s 00:00 [###################################################################] 100% mingw-w64-ucrt-x86_64-windows-default-manifest-6.4-4-any 3.0 KiB 27.4 KiB/s 00:00 [###################################################################] 100% Total (40/40) 116.3 MiB 19.7 MiB/s 00:06 [###################################################################] 100% (40/40) checking keys in keyring [###################################################################] 100% (40/40) checking package integrity [###################################################################] 100% (40/40) loading package files [###################################################################] 100% (40/40) checking for file conflicts [###################################################################] 100% (40/40) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/40) installing mingw-w64-ucrt-x86_64-libwinpthread-git [###################################################################] 100% ( 2/40) installing mingw-w64-ucrt-x86_64-gcc-libs [###################################################################] 100% ( 3/40) installing mingw-w64-ucrt-x86_64-libiconv [###################################################################] 100% ( 4/40) installing mingw-w64-ucrt-x86_64-gettext-runtime [###################################################################] 100% ( 5/40) installing mingw-w64-ucrt-x86_64-zlib [###################################################################] 100% ( 6/40) installing mingw-w64-ucrt-x86_64-zstd [###################################################################] 100% ( 7/40) installing mingw-w64-ucrt-x86_64-binutils [###################################################################] 100% ( 8/40) installing mingw-w64-ucrt-x86_64-headers-git [###################################################################] 100% ( 9/40) installing mingw-w64-ucrt-x86_64-crt-git [###################################################################] 100% (10/40) installing mingw-w64-ucrt-x86_64-gmp [###################################################################] 100% (11/40) installing mingw-w64-ucrt-x86_64-isl [###################################################################] 100% (12/40) installing mingw-w64-ucrt-x86_64-mpfr [###################################################################] 100% (13/40) installing mingw-w64-ucrt-x86_64-mpc [###################################################################] 100% (14/40) installing mingw-w64-ucrt-x86_64-windows-default-manifest [###################################################################] 100% (15/40) installing mingw-w64-ucrt-x86_64-winpthreads-git [###################################################################] 100% (16/40) installing mingw-w64-ucrt-x86_64-gcc [###################################################################] 100% (17/40) installing mingw-w64-ucrt-x86_64-expat [###################################################################] 100% (18/40) installing mingw-w64-ucrt-x86_64-libtre-git [###################################################################] 100% (19/40) installing mingw-w64-ucrt-x86_64-libsystre [###################################################################] 100% (20/40) installing mingw-w64-ucrt-x86_64-ncurses [###################################################################] 100% (21/40) installing mingw-w64-ucrt-x86_64-bzip2 [###################################################################] 100% (22/40) installing mingw-w64-ucrt-x86_64-libffi [###################################################################] 100% (23/40) installing mingw-w64-ucrt-x86_64-mpdecimal [###################################################################] 100% (24/40) installing mingw-w64-ucrt-x86_64-openssl [###################################################################] 100% Optional dependencies for mingw-w64-ucrt-x86_64-openssl mingw-w64-ucrt-x86_64-ca-certificates (25/40) installing mingw-w64-ucrt-x86_64-termcap [###################################################################] 100% (26/40) installing mingw-w64-ucrt-x86_64-readline [###################################################################] 100% (27/40) installing mingw-w64-ucrt-x86_64-tcl [###################################################################] 100% (28/40) installing mingw-w64-ucrt-x86_64-sqlite3 [###################################################################] 100% (29/40) installing mingw-w64-ucrt-x86_64-tk [###################################################################] 100% (30/40) installing mingw-w64-ucrt-x86_64-xz [###################################################################] 100% (31/40) installing mingw-w64-ucrt-x86_64-tzdata [###################################################################] 100% (32/40) installing mingw-w64-ucrt-x86_64-python [###################################################################] 100% (33/40) installing mingw-w64-ucrt-x86_64-xxhash [###################################################################] 100% (34/40) installing mingw-w64-ucrt-x86_64-gdb [###################################################################] 100% Optional dependencies for mingw-w64-ucrt-x86_64-gdb mingw-w64-ucrt-x86_64-python-pygments: for syntax highlighting (35/40) installing mingw-w64-ucrt-x86_64-gdb-multiarch [###################################################################] 100% Optional dependencies for mingw-w64-ucrt-x86_64-gdb-multiarch mingw-w64-ucrt-x86_64-python-pygments: for syntax highlighting (36/40) installing mingw-w64-ucrt-x86_64-libmangle-git [###################################################################] 100% (37/40) installing mingw-w64-ucrt-x86_64-make [###################################################################] 100% (38/40) installing mingw-w64-ucrt-x86_64-pkgconf [###################################################################] 100% (39/40) installing mingw-w64-ucrt-x86_64-tools-git [###################################################################] 100% (40/40) installing mingw-w64-ucrt-x86_64-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #pacman -S --needed mingw-w64-ucrt-x86_64-arm-none-eabi-toolchain pacman -S --needed mingw-w64-ucrt-x86_64-avr-toolchain pacman -S --needed mingw-w64-ucrt-x86_64-riscv64-unknown-elf-toolchainmingw32mingw-w64-i686-toolchainAdministrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-i686-toolchain :: There are 13 members in group mingw-w64-i686-toolchain: :: Repository mingw32 1) mingw-w64-i686-binutils 2) mingw-w64-i686-crt-git 3) mingw-w64-i686-gcc 4) mingw-w64-i686-gdb 5) mingw-w64-i686-gdb-multiarch 6) mingw-w64-i686-headers-git 7) mingw-w64-i686-libmangle-git 8) mingw-w64-i686-libwinpthread-git 9) mingw-w64-i686-make 10) mingw-w64-i686-pkgconf 11) mingw-w64-i686-tools-git 12) mingw-w64-i686-winpthreads-git 13) mingw-w64-i686-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (40) mingw-w64-i686-bzip2-1.0.8-3 mingw-w64-i686-expat-2.6.2-1 mingw-w64-i686-gcc-libs-14.1.0-3 mingw-w64-i686-gettext-runtime-0.22.5-2 mingw-w64-i686-gmp-6.3.0-2 mingw-w64-i686-isl-0.26-1 mingw-w64-i686-libffi-3.4.6-1 mingw-w64-i686-libiconv-1.17-4 mingw-w64-i686-libsystre-1.0.1-5 mingw-w64-i686-libtre-git-r177.07e66d0-2 mingw-w64-i686-mpc-1.3.1-2 mingw-w64-i686-mpdecimal-4.0.0-1 mingw-w64-i686-mpfr-4.2.1-2 mingw-w64-i686-ncurses-6.4.20231217-1 mingw-w64-i686-openssl-3.3.1-1 mingw-w64-i686-python-3.11.9-1 mingw-w64-i686-readline-8.2.010-1 mingw-w64-i686-sqlite3-3.46.0-1 mingw-w64-i686-tcl-8.6.13-1 mingw-w64-i686-termcap-1.3.1-7 mingw-w64-i686-tk-8.6.13-1 mingw-w64-i686-tzdata-2024a-1 mingw-w64-i686-windows-default-manifest-6.4-4 mingw-w64-i686-xxhash-0.8.2-2 mingw-w64-i686-xz-5.6.2-2 mingw-w64-i686-zlib-1.3.1-1 mingw-w64-i686-zstd-1.5.6-2 mingw-w64-i686-binutils-2.42-2 mingw-w64-i686-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-gcc-14.1.0-3 mingw-w64-i686-gdb-15.1-1 mingw-w64-i686-gdb-multiarch-15.1-1 mingw-w64-i686-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-make-4.4.1-2 mingw-w64-i686-pkgconf-1~2.2.0-1 mingw-w64-i686-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-i686-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 114.86 MiB Total Installed Size: 782.95 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-i686-openssl-3.3.1-1-any 7.2 MiB 8.11 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 6.03 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-gdb-multiarch-15.1-1-any 6.8 MiB 4.61 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-binutils-2.42-2-any 5.8 MiB 8.19 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-python-3.11.9-1-any 23.4 MiB 12.8 MiB/s 00:02 [###################################################################] 100% mingw-w64-i686-gdb-15.1-1-any 4.0 MiB 4.49 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-crt-git-12.0.0.r81.g90abf784a-1-any 3.6 MiB 9.27 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-tcl-8.6.13-1-any 2.7 MiB 6.64 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-tk-8.6.13-1-any 2041.2 KiB 3.64 MiB/s 00:01 [###################################################################] 100% mingw-w64-i686-ncurses-6.4.20231217-1-any 1803.2 KiB 4.91 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-sqlite3-3.46.0-1-any 1744.3 KiB 9.90 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-isl-0.26-1-any 1461.3 KiB 7.59 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-gcc-14.1.0-3-any 41.8 MiB 14.0 MiB/s 00:03 [###################################################################] 100% mingw-w64-i686-gcc-libs-14.1.0-3-any 1095.0 KiB 3.42 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-xz-5.6.2-2-any 771.0 KiB 3.71 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libiconv-1.17-4-any 727.9 KiB 7.56 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-zstd-1.5.6-2-any 631.5 KiB 6.63 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-mpfr-4.2.1-2-any 549.1 KiB 4.92 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-gmp-6.3.0-2-any 543.0 KiB 4.24 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-readline-8.2.010-1-any 407.0 KiB 3.18 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-tools-git-12.0.0.r81.g90abf784a-1-any 319.8 KiB 2.50 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-gettext-runtime-0.22.5-2-any 303.0 KiB 2.10 MiB/s 00:00 [###################################################################] 100% mingw-w64-i686-tzdata-2024a-1-any 227.2 KiB 1215 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-expat-2.6.2-1-any 165.6 KiB 1068 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-mpdecimal-4.0.0-1-any 158.3 KiB 842 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-make-4.4.1-2-any 142.4 KiB 1531 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-mpc-1.3.1-2-any 133.1 KiB 950 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-xxhash-0.8.2-2-any 131.0 KiB 1409 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-zlib-1.3.1-1-any 103.3 KiB 1099 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-bzip2-1.0.8-3-any 94.9 KiB 673 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-pkgconf-1~2.2.0-1-any 89.0 KiB 712 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libtre-git-r177.07e66d0-2-any 82.8 KiB 662 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libffi-3.4.6-1-any 45.8 KiB 482 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-winpthreads-git-12.0.0.r81.g90abf784a-1-any 41.2 KiB 329 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 33.0 KiB 176 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-termcap-1.3.1-7-any 29.2 KiB 186 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 23.9 KiB 170 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libsystre-1.0.1-5-any 10.4 KiB 94.3 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-libmangle-git-12.0.0.r81.g90abf784a-1-any 21.9 KiB 156 KiB/s 00:00 [###################################################################] 100% mingw-w64-i686-windows-default-manifest-6.4-4-any 3.0 KiB 31.6 KiB/s 00:00 [###################################################################] 100% Total (40/40) 114.9 MiB 26.4 MiB/s 00:04 [###################################################################] 100% (40/40) checking keys in keyring [###################################################################] 100% (40/40) checking package integrity [###################################################################] 100% (40/40) loading package files [###################################################################] 100% (40/40) checking for file conflicts [###################################################################] 100% (40/40) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/40) installing mingw-w64-i686-libwinpthread-git [###################################################################] 100% ( 2/40) installing mingw-w64-i686-gcc-libs [###################################################################] 100% ( 3/40) installing mingw-w64-i686-libiconv [###################################################################] 100% ( 4/40) installing mingw-w64-i686-gettext-runtime [###################################################################] 100% ( 5/40) installing mingw-w64-i686-zlib [###################################################################] 100% ( 6/40) installing mingw-w64-i686-zstd [###################################################################] 100% ( 7/40) installing mingw-w64-i686-binutils [###################################################################] 100% ( 8/40) installing mingw-w64-i686-headers-git [###################################################################] 100% ( 9/40) installing mingw-w64-i686-crt-git [###################################################################] 100% (10/40) installing mingw-w64-i686-gmp [###################################################################] 100% (11/40) installing mingw-w64-i686-isl [###################################################################] 100% (12/40) installing mingw-w64-i686-mpfr [###################################################################] 100% (13/40) installing mingw-w64-i686-mpc [###################################################################] 100% (14/40) installing mingw-w64-i686-windows-default-manifest [###################################################################] 100% (15/40) installing mingw-w64-i686-winpthreads-git [###################################################################] 100% (16/40) installing mingw-w64-i686-gcc [###################################################################] 100% (17/40) installing mingw-w64-i686-expat [###################################################################] 100% (18/40) installing mingw-w64-i686-libtre-git [###################################################################] 100% (19/40) installing mingw-w64-i686-libsystre [###################################################################] 100% (20/40) installing mingw-w64-i686-ncurses [###################################################################] 100% (21/40) installing mingw-w64-i686-bzip2 [###################################################################] 100% (22/40) installing mingw-w64-i686-libffi [###################################################################] 100% (23/40) installing mingw-w64-i686-mpdecimal [###################################################################] 100% (24/40) installing mingw-w64-i686-openssl [###################################################################] 100% Optional dependencies for mingw-w64-i686-openssl mingw-w64-i686-ca-certificates (25/40) installing mingw-w64-i686-termcap [###################################################################] 100% (26/40) installing mingw-w64-i686-readline [###################################################################] 100% (27/40) installing mingw-w64-i686-tcl [###################################################################] 100% (28/40) installing mingw-w64-i686-sqlite3 [###################################################################] 100% (29/40) installing mingw-w64-i686-tk [###################################################################] 100% (30/40) installing mingw-w64-i686-xz [###################################################################] 100% (31/40) installing mingw-w64-i686-tzdata [###################################################################] 100% (32/40) installing mingw-w64-i686-python [###################################################################] 100% (33/40) installing mingw-w64-i686-xxhash [###################################################################] 100% (34/40) installing mingw-w64-i686-gdb [###################################################################] 100% Optional dependencies for mingw-w64-i686-gdb mingw-w64-i686-python-pygments: for syntax highlighting (35/40) installing mingw-w64-i686-gdb-multiarch [###################################################################] 100% Optional dependencies for mingw-w64-i686-gdb-multiarch mingw-w64-i686-python-pygments: for syntax highlighting (36/40) installing mingw-w64-i686-libmangle-git [###################################################################] 100% (37/40) installing mingw-w64-i686-make [###################################################################] 100% (38/40) installing mingw-w64-i686-pkgconf [###################################################################] 100% (39/40) installing mingw-w64-i686-tools-git [###################################################################] 100% (40/40) installing mingw-w64-i686-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #mingw64mingw-w64-x86_64-toolchainAdministrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-x86_64-toolchain :: There are 13 members in group mingw-w64-x86_64-toolchain: :: Repository mingw64 1) mingw-w64-x86_64-binutils 2) mingw-w64-x86_64-crt-git 3) mingw-w64-x86_64-gcc 4) mingw-w64-x86_64-gdb 5) mingw-w64-x86_64-gdb-multiarch 6) mingw-w64-x86_64-headers-git 7) mingw-w64-x86_64-libmangle-git 8) mingw-w64-x86_64-libwinpthread-git 9) mingw-w64-x86_64-make 10) mingw-w64-x86_64-pkgconf 11) mingw-w64-x86_64-tools-git 12) mingw-w64-x86_64-winpthreads-git 13) mingw-w64-x86_64-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (40) mingw-w64-x86_64-bzip2-1.0.8-3 mingw-w64-x86_64-expat-2.6.2-1 mingw-w64-x86_64-gcc-libs-14.1.0-3 mingw-w64-x86_64-gettext-runtime-0.22.5-2 mingw-w64-x86_64-gmp-6.3.0-2 mingw-w64-x86_64-isl-0.26-1 mingw-w64-x86_64-libffi-3.4.6-1 mingw-w64-x86_64-libiconv-1.17-4 mingw-w64-x86_64-libsystre-1.0.1-5 mingw-w64-x86_64-libtre-git-r177.07e66d0-2 mingw-w64-x86_64-mpc-1.3.1-2 mingw-w64-x86_64-mpdecimal-4.0.0-1 mingw-w64-x86_64-mpfr-4.2.1-2 mingw-w64-x86_64-ncurses-6.4.20231217-1 mingw-w64-x86_64-openssl-3.3.1-1 mingw-w64-x86_64-python-3.11.9-1 mingw-w64-x86_64-readline-8.2.010-1 mingw-w64-x86_64-sqlite3-3.46.0-1 mingw-w64-x86_64-tcl-8.6.13-1 mingw-w64-x86_64-termcap-1.3.1-7 mingw-w64-x86_64-tk-8.6.13-1 mingw-w64-x86_64-tzdata-2024a-1 mingw-w64-x86_64-windows-default-manifest-6.4-4 mingw-w64-x86_64-xxhash-0.8.2-2 mingw-w64-x86_64-xz-5.6.2-2 mingw-w64-x86_64-zlib-1.3.1-1 mingw-w64-x86_64-zstd-1.5.6-2 mingw-w64-x86_64-binutils-2.42-2 mingw-w64-x86_64-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-gcc-14.1.0-3 mingw-w64-x86_64-gdb-15.1-1 mingw-w64-x86_64-gdb-multiarch-15.1-1 mingw-w64-x86_64-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-make-4.4.1-2 mingw-w64-x86_64-pkgconf-1~2.2.0-1 mingw-w64-x86_64-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 116.39 MiB Total Installed Size: 855.76 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-x86_64-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 8.57 MiB/s 00:01 [###################################################################] 100% mingw-w64-x86_64-gdb-multiarch-15.1-1-any 6.3 MiB 8.20 MiB/s 00:01 [###################################################################] 100% mingw-w64-x86_64-binutils-2.42-2-any 5.8 MiB 12.0 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-crt-git-12.0.0.r81.g90abf784a-1-any 4.3 MiB 6.15 MiB/s 00:01 [###################################################################] 100% mingw-w64-x86_64-gdb-15.1-1-any 3.8 MiB 12.2 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-tcl-8.6.13-1-any 2.7 MiB 8.55 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-tk-8.6.13-1-any 2029.2 KiB 7.45 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-openssl-3.3.1-1-any 7.3 MiB 3.28 MiB/s 00:02 [###################################################################] 100% mingw-w64-x86_64-gcc-14.1.0-3-any 43.4 MiB 17.3 MiB/s 00:03 [###################################################################] 100% mingw-w64-x86_64-ncurses-6.4.20231217-1-any 1812.7 KiB 7.08 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-sqlite3-3.46.0-1-any 1707.8 KiB 7.13 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-isl-0.26-1-any 1442.0 KiB 5.31 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-gcc-libs-14.1.0-3-any 1028.0 KiB 9.21 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-xz-5.6.2-2-any 755.8 KiB 6.71 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libiconv-1.17-4-any 718.9 KiB 7.55 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-zstd-1.5.6-2-any 635.9 KiB 5.70 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-gmp-6.3.0-2-any 577.8 KiB 5.18 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-mpfr-4.2.1-2-any 535.8 KiB 4.80 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-readline-8.2.010-1-any 411.0 KiB 2.85 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-tools-git-12.0.0.r81.g90abf784a-1-any 313.8 KiB 2.17 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-gettext-runtime-0.22.5-2-any 297.2 KiB 4.68 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-tzdata-2024a-1-any 227.1 KiB 2.84 MiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-expat-2.6.2-1-any 162.2 KiB 1744 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-mpdecimal-4.0.0-1-any 150.8 KiB 1370 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-make-4.4.1-2-any 135.3 KiB 966 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-mpc-1.3.1-2-any 128.7 KiB 1030 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-xxhash-0.8.2-2-any 116.4 KiB 1058 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-zlib-1.3.1-1-any 104.4 KiB 835 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-bzip2-1.0.8-3-any 90.9 KiB 978 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-pkgconf-1~2.2.0-1-any 84.4 KiB 675 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libtre-git-r177.07e66d0-2-any 80.0 KiB 734 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libffi-3.4.6-1-any 42.6 KiB 391 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-python-3.11.9-1-any 23.3 MiB 6.37 MiB/s 00:04 [###################################################################] 100% mingw-w64-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1-any 39.8 KiB 284 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 28.5 KiB 167 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-termcap-1.3.1-7-any 27.3 KiB 134 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 23.3 KiB 115 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libsystre-1.0.1-5-any 9.8 KiB 78.1 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1-any 22.4 KiB 129 KiB/s 00:00 [###################################################################] 100% mingw-w64-x86_64-windows-default-manifest-6.4-4-any 3.1 KiB 33.5 KiB/s 00:00 [###################################################################] 100% Total (40/40) 116.4 MiB 28.4 MiB/s 00:04 [###################################################################] 100% (40/40) checking keys in keyring [###################################################################] 100% (40/40) checking package integrity [###################################################################] 100% (40/40) loading package files [###################################################################] 100% (40/40) checking for file conflicts [###################################################################] 100% (40/40) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/40) installing mingw-w64-x86_64-libwinpthread-git [###################################################################] 100% ( 2/40) installing mingw-w64-x86_64-gcc-libs [###################################################################] 100% ( 3/40) installing mingw-w64-x86_64-libiconv [###################################################################] 100% ( 4/40) installing mingw-w64-x86_64-gettext-runtime [###################################################################] 100% ( 5/40) installing mingw-w64-x86_64-zlib [###################################################################] 100% ( 6/40) installing mingw-w64-x86_64-zstd [###################################################################] 100% ( 7/40) installing mingw-w64-x86_64-binutils [###################################################################] 100% ( 8/40) installing mingw-w64-x86_64-headers-git [###################################################################] 100% ( 9/40) installing mingw-w64-x86_64-crt-git [###################################################################] 100% (10/40) installing mingw-w64-x86_64-gmp [###################################################################] 100% (11/40) installing mingw-w64-x86_64-isl [###################################################################] 100% (12/40) installing mingw-w64-x86_64-mpfr [###################################################################] 100% (13/40) installing mingw-w64-x86_64-mpc [###################################################################] 100% (14/40) installing mingw-w64-x86_64-windows-default-manifest [###################################################################] 100% (15/40) installing mingw-w64-x86_64-winpthreads-git [###################################################################] 100% (16/40) installing mingw-w64-x86_64-gcc [###################################################################] 100% (17/40) installing mingw-w64-x86_64-expat [###################################################################] 100% (18/40) installing mingw-w64-x86_64-libtre-git [###################################################################] 100% (19/40) installing mingw-w64-x86_64-libsystre [###################################################################] 100% (20/40) installing mingw-w64-x86_64-ncurses [###################################################################] 100% (21/40) installing mingw-w64-x86_64-bzip2 [###################################################################] 100% (22/40) installing mingw-w64-x86_64-libffi [###################################################################] 100% (23/40) installing mingw-w64-x86_64-mpdecimal [###################################################################] 100% (24/40) installing mingw-w64-x86_64-openssl [###################################################################] 100% Optional dependencies for mingw-w64-x86_64-openssl mingw-w64-x86_64-ca-certificates (25/40) installing mingw-w64-x86_64-termcap [###################################################################] 100% (26/40) installing mingw-w64-x86_64-readline [###################################################################] 100% (27/40) installing mingw-w64-x86_64-tcl [###################################################################] 100% (28/40) installing mingw-w64-x86_64-sqlite3 [###################################################################] 100% (29/40) installing mingw-w64-x86_64-tk [###################################################################] 100% (30/40) installing mingw-w64-x86_64-xz [###################################################################] 100% (31/40) installing mingw-w64-x86_64-tzdata [###################################################################] 100% (32/40) installing mingw-w64-x86_64-python [###################################################################] 100% (33/40) installing mingw-w64-x86_64-xxhash [###################################################################] 100% (34/40) installing mingw-w64-x86_64-gdb [###################################################################] 100% Optional dependencies for mingw-w64-x86_64-gdb mingw-w64-x86_64-python-pygments: for syntax highlighting (35/40) installing mingw-w64-x86_64-gdb-multiarch [###################################################################] 100% Optional dependencies for mingw-w64-x86_64-gdb-multiarch mingw-w64-x86_64-python-pygments: for syntax highlighting (36/40) installing mingw-w64-x86_64-libmangle-git [###################################################################] 100% (37/40) installing mingw-w64-x86_64-make [###################################################################] 100% (38/40) installing mingw-w64-x86_64-pkgconf [###################################################################] 100% (39/40) installing mingw-w64-x86_64-tools-git [###################################################################] 100% (40/40) installing mingw-w64-x86_64-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #mingw-w64-x86_64-arm-none-eabi-toolchainpacman -S --needed mingw-w64-x86_64-arm-none-eabi-toolchainmingw-w64-x86_64-avr-toolchainpacman -S --needed mingw-w64-x86_64-avr-toolchainmingw-w64-x86_64-riscv64-unknown-elf-toolchainpacman -S --needed mingw-w64-x86_64-riscv64-unknown-elf-toolchainclang32mingw-w64-clang-i686-toolchainAdministrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-clang-i686-toolchain :: There are 21 members in group mingw-w64-clang-i686-toolchain: :: Repository clang32 1) mingw-w64-clang-i686-clang 2) mingw-w64-clang-i686-clang-analyzer 3) mingw-w64-clang-i686-clang-libs 4) mingw-w64-clang-i686-clang-tools-extra 5) mingw-w64-clang-i686-compiler-rt 6) mingw-w64-clang-i686-crt-git 7) mingw-w64-clang-i686-headers-git 8) mingw-w64-clang-i686-libc++ 9) mingw-w64-clang-i686-libmangle-git 10) mingw-w64-clang-i686-libunwind 11) mingw-w64-clang-i686-libwinpthread-git 12) mingw-w64-clang-i686-lld 13) mingw-w64-clang-i686-lldb 14) mingw-w64-clang-i686-llvm 15) mingw-w64-clang-i686-llvm-libs 16) mingw-w64-clang-i686-llvm-openmp 17) mingw-w64-clang-i686-make 18) mingw-w64-clang-i686-pkgconf 19) mingw-w64-clang-i686-tools-git 20) mingw-w64-clang-i686-winpthreads-git 21) mingw-w64-clang-i686-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (44) mingw-w64-clang-i686-bzip2-1.0.8-3 mingw-w64-clang-i686-expat-2.6.2-1 mingw-w64-clang-i686-gettext-runtime-0.22.5-2 mingw-w64-clang-i686-libffi-3.4.6-1 mingw-w64-clang-i686-libiconv-1.17-4 mingw-w64-clang-i686-libsystre-1.0.1-5 mingw-w64-clang-i686-libtre-git-r177.07e66d0-2 mingw-w64-clang-i686-libxml2-2.12.9-1 mingw-w64-clang-i686-lua-5.4.7-2 mingw-w64-clang-i686-mpdecimal-4.0.0-1 mingw-w64-clang-i686-ncurses-6.4.20231217-1 mingw-w64-clang-i686-openssl-3.3.1-1 mingw-w64-clang-i686-python-3.11.9-1 mingw-w64-clang-i686-python-six-1.16.0-4 mingw-w64-clang-i686-readline-8.2.010-1 mingw-w64-clang-i686-sqlite3-3.46.0-1 mingw-w64-clang-i686-tcl-8.6.13-1 mingw-w64-clang-i686-termcap-1.3.1-7 mingw-w64-clang-i686-tk-8.6.13-1 mingw-w64-clang-i686-tzdata-2024a-1 mingw-w64-clang-i686-xz-5.6.2-2 mingw-w64-clang-i686-zlib-1.3.1-1 mingw-w64-clang-i686-zstd-1.5.6-2 mingw-w64-clang-i686-clang-18.1.8-1 mingw-w64-clang-i686-clang-analyzer-18.1.8-1 mingw-w64-clang-i686-clang-libs-18.1.8-1 mingw-w64-clang-i686-clang-tools-extra-18.1.8-1 mingw-w64-clang-i686-compiler-rt-18.1.8-1 mingw-w64-clang-i686-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-libc++-18.1.8-1 mingw-w64-clang-i686-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-libunwind-18.1.8-1 mingw-w64-clang-i686-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-lld-18.1.8-1 mingw-w64-clang-i686-lldb-18.1.8-1 mingw-w64-clang-i686-llvm-18.1.8-1 mingw-w64-clang-i686-llvm-libs-18.1.8-1 mingw-w64-clang-i686-llvm-openmp-18.1.8-1 mingw-w64-clang-i686-make-4.4.1-2 mingw-w64-clang-i686-pkgconf-1~2.2.0-1 mingw-w64-clang-i686-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-i686-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 238.84 MiB Total Installed Size: 1640.91 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-clang-i686-python-3.11.9-1-any 23.1 MiB 12.7 MiB/s 00:02 [###################################################################] 100% mingw-w64-clang-i686-clang-18.1.8-1-any 33.5 MiB 13.0 MiB/s 00:03 [###################################################################] 100% mingw-w64-clang-i686-clang-libs-18.1.8-1-any 22.7 MiB 6.23 MiB/s 00:04 [###################################################################] 100% mingw-w64-clang-i686-openssl-3.3.1-1-any 6.8 MiB 6.99 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-i686-clang-tools-extra-18.1.8-1-any 17.0 MiB 7.95 MiB/s 00:02 [###################################################################] 100% mingw-w64-clang-i686-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 11.7 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-i686-lldb-18.1.8-1-any 6.0 MiB 7.54 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-i686-lld-18.1.8-1-any 3.4 MiB 10.4 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-tcl-8.6.13-1-any 2.6 MiB 7.61 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-crt-git-12.0.0.r81.g90abf784a-1-any 2.2 MiB 8.18 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-tk-8.6.13-1-any 1996.1 KiB 7.80 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-sqlite3-3.46.0-1-any 1931.5 KiB 7.54 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-llvm-libs-18.1.8-1-any 28.1 MiB 4.64 MiB/s 00:06 [###################################################################] 100% mingw-w64-clang-i686-ncurses-6.4.20231217-1-any 1721.9 KiB 5.98 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libc++-18.1.8-1-any 1544.3 KiB 5.67 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libxml2-2.12.9-1-any 1050.5 KiB 4.71 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-compiler-rt-18.1.8-1-any 770.5 KiB 2.52 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-xz-5.6.2-2-any 765.8 KiB 2.66 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libiconv-1.17-4-any 717.2 KiB 3.73 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-llvm-18.1.8-1-any 73.5 MiB 10.8 MiB/s 00:07 [###################################################################] 100% mingw-w64-clang-i686-zstd-1.5.6-2-any 551.2 KiB 2.46 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-llvm-openmp-18.1.8-1-any 484.2 KiB 2.52 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-readline-8.2.010-1-any 400.8 KiB 1974 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-lua-5.4.7-2-any 333.6 KiB 2.99 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-gettext-runtime-0.22.5-2-any 302.3 KiB 2.71 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-tools-git-12.0.0.r81.g90abf784a-1-any 294.7 KiB 2.30 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-tzdata-2024a-1-any 227.3 KiB 1321 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-expat-2.6.2-1-any 172.0 KiB 920 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-mpdecimal-4.0.0-1-any 145.5 KiB 668 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-make-4.4.1-2-any 133.1 KiB 1685 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-clang-analyzer-18.1.8-1-any 121.8 KiB 1282 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-zlib-1.3.1-1-any 91.3 KiB 730 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-pkgconf-1~2.2.0-1-any 83.3 KiB 666 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libtre-git-r177.07e66d0-2-any 81.4 KiB 473 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-bzip2-1.0.8-3-any 81.1 KiB 400 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libunwind-18.1.8-1-any 63.3 KiB 314 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libffi-3.4.6-1-any 45.3 KiB 208 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-winpthreads-git-12.0.0.r81.g90abf784a-1-any 35.4 KiB 283 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 34.8 KiB 246 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 27.8 KiB 255 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-termcap-1.3.1-7-any 27.7 KiB 126 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-python-six-1.16.0-4-any 27.6 KiB 59.0 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libmangle-git-12.0.0.r81.g90abf784a-1-any 18.4 KiB 43.6 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-i686-libsystre-1.0.1-5-any 11.0 KiB 27.0 KiB/s 00:00 [###################################################################] 100% Total (44/44) 238.8 MiB 28.3 MiB/s 00:08 [###################################################################] 100% (44/44) checking keys in keyring [###################################################################] 100% (44/44) checking package integrity [###################################################################] 100% (44/44) loading package files [###################################################################] 100% (44/44) checking for file conflicts [###################################################################] 100% (44/44) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/44) installing mingw-w64-clang-i686-libunwind [###################################################################] 100% ( 2/44) installing mingw-w64-clang-i686-libc++ [###################################################################] 100% ( 3/44) installing mingw-w64-clang-i686-libffi [###################################################################] 100% ( 4/44) installing mingw-w64-clang-i686-libiconv [###################################################################] 100% ( 5/44) installing mingw-w64-clang-i686-gettext-runtime [###################################################################] 100% ( 6/44) installing mingw-w64-clang-i686-xz [###################################################################] 100% ( 7/44) installing mingw-w64-clang-i686-zlib [###################################################################] 100% ( 8/44) installing mingw-w64-clang-i686-libxml2 [###################################################################] 100% Optional dependencies for mingw-w64-clang-i686-libxml2 mingw-w64-clang-i686-python: Python bindings [pending] ( 9/44) installing mingw-w64-clang-i686-zstd [###################################################################] 100% (10/44) installing mingw-w64-clang-i686-llvm-libs [###################################################################] 100% (11/44) installing mingw-w64-clang-i686-llvm [###################################################################] 100% (12/44) installing mingw-w64-clang-i686-clang-libs [###################################################################] 100% (13/44) installing mingw-w64-clang-i686-compiler-rt [###################################################################] 100% (14/44) installing mingw-w64-clang-i686-headers-git [###################################################################] 100% (15/44) installing mingw-w64-clang-i686-crt-git [###################################################################] 100% (16/44) installing mingw-w64-clang-i686-lld [###################################################################] 100% (17/44) installing mingw-w64-clang-i686-libwinpthread-git [###################################################################] 100% (18/44) installing mingw-w64-clang-i686-winpthreads-git [###################################################################] 100% (19/44) installing mingw-w64-clang-i686-clang [###################################################################] 100% (20/44) installing mingw-w64-clang-i686-expat [###################################################################] 100% (21/44) installing mingw-w64-clang-i686-bzip2 [###################################################################] 100% (22/44) installing mingw-w64-clang-i686-mpdecimal [###################################################################] 100% (23/44) installing mingw-w64-clang-i686-libtre-git [###################################################################] 100% (24/44) installing mingw-w64-clang-i686-libsystre [###################################################################] 100% (25/44) installing mingw-w64-clang-i686-ncurses [###################################################################] 100% (26/44) installing mingw-w64-clang-i686-openssl [###################################################################] 100% Optional dependencies for mingw-w64-clang-i686-openssl mingw-w64-clang-i686-ca-certificates (27/44) installing mingw-w64-clang-i686-termcap [###################################################################] 100% (28/44) installing mingw-w64-clang-i686-readline [###################################################################] 100% (29/44) installing mingw-w64-clang-i686-tcl [###################################################################] 100% (30/44) installing mingw-w64-clang-i686-sqlite3 [###################################################################] 100% (31/44) installing mingw-w64-clang-i686-tk [###################################################################] 100% (32/44) installing mingw-w64-clang-i686-tzdata [###################################################################] 100% (33/44) installing mingw-w64-clang-i686-python [###################################################################] 100% (34/44) installing mingw-w64-clang-i686-clang-analyzer [###################################################################] 100% (35/44) installing mingw-w64-clang-i686-clang-tools-extra [###################################################################] 100% (36/44) installing mingw-w64-clang-i686-libmangle-git [###################################################################] 100% (37/44) installing mingw-w64-clang-i686-lua [###################################################################] 100% (38/44) installing mingw-w64-clang-i686-python-six [###################################################################] 100% (39/44) installing mingw-w64-clang-i686-lldb [###################################################################] 100% (40/44) installing mingw-w64-clang-i686-llvm-openmp [###################################################################] 100% (41/44) installing mingw-w64-clang-i686-make [###################################################################] 100% (42/44) installing mingw-w64-clang-i686-pkgconf [###################################################################] 100% (43/44) installing mingw-w64-clang-i686-tools-git [###################################################################] 100% (44/44) installing mingw-w64-clang-i686-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #clang64mingw-w64-clang-x86_64-toolchainAdministrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-clang-x86_64-toolchain :: There are 21 members in group mingw-w64-clang-x86_64-toolchain: :: Repository clang64 1) mingw-w64-clang-x86_64-clang 2) mingw-w64-clang-x86_64-clang-analyzer 3) mingw-w64-clang-x86_64-clang-libs 4) mingw-w64-clang-x86_64-clang-tools-extra 5) mingw-w64-clang-x86_64-compiler-rt 6) mingw-w64-clang-x86_64-crt-git 7) mingw-w64-clang-x86_64-headers-git 8) mingw-w64-clang-x86_64-libc++ 9) mingw-w64-clang-x86_64-libmangle-git 10) mingw-w64-clang-x86_64-libunwind 11) mingw-w64-clang-x86_64-libwinpthread-git 12) mingw-w64-clang-x86_64-lld 13) mingw-w64-clang-x86_64-lldb 14) mingw-w64-clang-x86_64-llvm 15) mingw-w64-clang-x86_64-llvm-libs 16) mingw-w64-clang-x86_64-llvm-openmp 17) mingw-w64-clang-x86_64-make 18) mingw-w64-clang-x86_64-pkgconf 19) mingw-w64-clang-x86_64-tools-git 20) mingw-w64-clang-x86_64-winpthreads-git 21) mingw-w64-clang-x86_64-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (44) mingw-w64-clang-x86_64-bzip2-1.0.8-3 mingw-w64-clang-x86_64-expat-2.6.2-1 mingw-w64-clang-x86_64-gettext-runtime-0.22.5-2 mingw-w64-clang-x86_64-libffi-3.4.6-1 mingw-w64-clang-x86_64-libiconv-1.17-4 mingw-w64-clang-x86_64-libsystre-1.0.1-5 mingw-w64-clang-x86_64-libtre-git-r177.07e66d0-2 mingw-w64-clang-x86_64-libxml2-2.12.9-1 mingw-w64-clang-x86_64-lua-5.4.7-2 mingw-w64-clang-x86_64-mpdecimal-4.0.0-1 mingw-w64-clang-x86_64-ncurses-6.4.20231217-1 mingw-w64-clang-x86_64-openssl-3.3.1-1 mingw-w64-clang-x86_64-python-3.11.9-1 mingw-w64-clang-x86_64-python-six-1.16.0-4 mingw-w64-clang-x86_64-readline-8.2.010-1 mingw-w64-clang-x86_64-sqlite3-3.46.0-1 mingw-w64-clang-x86_64-tcl-8.6.13-1 mingw-w64-clang-x86_64-termcap-1.3.1-7 mingw-w64-clang-x86_64-tk-8.6.13-1 mingw-w64-clang-x86_64-tzdata-2024a-1 mingw-w64-clang-x86_64-xz-5.6.2-2 mingw-w64-clang-x86_64-zlib-1.3.1-1 mingw-w64-clang-x86_64-zstd-1.5.6-2 mingw-w64-clang-x86_64-clang-18.1.8-1 mingw-w64-clang-x86_64-clang-analyzer-18.1.8-1 mingw-w64-clang-x86_64-clang-libs-18.1.8-1 mingw-w64-clang-x86_64-clang-tools-extra-18.1.8-1 mingw-w64-clang-x86_64-compiler-rt-18.1.8-1 mingw-w64-clang-x86_64-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-libc++-18.1.8-1 mingw-w64-clang-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-libunwind-18.1.8-1 mingw-w64-clang-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-lld-18.1.8-1 mingw-w64-clang-x86_64-lldb-18.1.8-1 mingw-w64-clang-x86_64-llvm-18.1.8-1 mingw-w64-clang-x86_64-llvm-libs-18.1.8-1 mingw-w64-clang-x86_64-llvm-openmp-18.1.8-1 mingw-w64-clang-x86_64-make-4.4.1-2 mingw-w64-clang-x86_64-pkgconf-1~2.2.0-1 mingw-w64-clang-x86_64-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 234.37 MiB Total Installed Size: 1651.36 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-clang-x86_64-llvm-libs-18.1.8-1-any 26.0 MiB 14.7 MiB/s 00:02 [###################################################################] 100% mingw-w64-clang-x86_64-llvm-18.1.8-1-any 73.2 MiB 17.7 MiB/s 00:04 [###################################################################] 100% mingw-w64-clang-x86_64-clang-libs-18.1.8-1-any 20.8 MiB 4.82 MiB/s 00:04 [###################################################################] 100% mingw-w64-clang-x86_64-python-3.11.9-1-any 23.1 MiB 5.05 MiB/s 00:05 [###################################################################] 100% mingw-w64-clang-x86_64-openssl-3.3.1-1-any 7.0 MiB 11.8 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-x86_64-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 7.86 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-x86_64-lldb-18.1.8-1-any 5.5 MiB 7.05 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-x86_64-clang-18.1.8-1-any 35.1 MiB 6.02 MiB/s 00:06 [###################################################################] 100% mingw-w64-clang-x86_64-clang-tools-extra-18.1.8-1-any 15.3 MiB 4.19 MiB/s 00:04 [###################################################################] 100% mingw-w64-clang-x86_64-lld-18.1.8-1-any 3.0 MiB 9.58 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-tcl-8.6.13-1-any 2.6 MiB 11.2 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-crt-git-12.0.0.r81.g90abf784a-1-any 2.5 MiB 15.8 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-tk-8.6.13-1-any 2020.4 KiB 17.9 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-sqlite3-3.46.0-1-any 1939.6 KiB 12.1 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-ncurses-6.4.20231217-1-any 1749.4 KiB 9.14 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libc++-18.1.8-1-any 1552.2 KiB 7.47 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libxml2-2.12.9-1-any 1071.9 KiB 8.37 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-compiler-rt-18.1.8-1-any 877.6 KiB 6.12 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libiconv-1.17-4-any 715.2 KiB 4.99 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-xz-5.6.2-2-any 764.7 KiB 3.99 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-zstd-1.5.6-2-any 561.8 KiB 3.19 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-llvm-openmp-18.1.8-1-any 504.5 KiB 2.88 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-readline-8.2.010-1-any 408.2 KiB 2.32 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-lua-5.4.7-2-any 335.6 KiB 1963 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-tools-git-12.0.0.r81.g90abf784a-1-any 307.0 KiB 2.40 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-gettext-runtime-0.22.5-2-any 302.5 KiB 2.11 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-tzdata-2024a-1-any 227.2 KiB 2.85 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-expat-2.6.2-1-any 169.7 KiB 1824 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-mpdecimal-4.0.0-1-any 146.5 KiB 1332 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-make-4.4.1-2-any 137.5 KiB 732 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-clang-analyzer-18.1.8-1-any 121.8 KiB 597 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-zlib-1.3.1-1-any 93.9 KiB 751 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-bzip2-1.0.8-3-any 85.9 KiB 687 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-pkgconf-1~2.2.0-1-any 84.8 KiB 678 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libtre-git-r177.07e66d0-2-any 83.0 KiB 532 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libunwind-18.1.8-1-any 50.1 KiB 533 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libffi-3.4.6-1-any 43.7 KiB 280 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1-any 37.3 KiB 239 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 36.9 KiB 238 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-termcap-1.3.1-7-any 28.4 KiB 261 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 27.8 KiB 253 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-python-six-1.16.0-4-any 27.6 KiB 135 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libsystre-1.0.1-5-any 11.5 KiB 105 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-x86_64-libmangle-git-12.0.0.r81.g90abf784a-1-any 20.1 KiB 99.2 KiB/s 00:00 [###################################################################] 100% Total (44/44) 234.4 MiB 30.1 MiB/s 00:08 [###################################################################] 100% (44/44) checking keys in keyring [###################################################################] 100% (44/44) checking package integrity [###################################################################] 100% (44/44) loading package files [###################################################################] 100% (44/44) checking for file conflicts [###################################################################] 100% (44/44) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/44) installing mingw-w64-clang-x86_64-libunwind [###################################################################] 100% ( 2/44) installing mingw-w64-clang-x86_64-libc++ [###################################################################] 100% ( 3/44) installing mingw-w64-clang-x86_64-libffi [###################################################################] 100% ( 4/44) installing mingw-w64-clang-x86_64-libiconv [###################################################################] 100% ( 5/44) installing mingw-w64-clang-x86_64-gettext-runtime [###################################################################] 100% ( 6/44) installing mingw-w64-clang-x86_64-xz [###################################################################] 100% ( 7/44) installing mingw-w64-clang-x86_64-zlib [###################################################################] 100% ( 8/44) installing mingw-w64-clang-x86_64-libxml2 [###################################################################] 100% Optional dependencies for mingw-w64-clang-x86_64-libxml2 mingw-w64-clang-x86_64-python: Python bindings [pending] ( 9/44) installing mingw-w64-clang-x86_64-zstd [###################################################################] 100% (10/44) installing mingw-w64-clang-x86_64-llvm-libs [###################################################################] 100% (11/44) installing mingw-w64-clang-x86_64-llvm [###################################################################] 100% (12/44) installing mingw-w64-clang-x86_64-clang-libs [###################################################################] 100% (13/44) installing mingw-w64-clang-x86_64-compiler-rt [###################################################################] 100% (14/44) installing mingw-w64-clang-x86_64-headers-git [###################################################################] 100% (15/44) installing mingw-w64-clang-x86_64-crt-git [###################################################################] 100% (16/44) installing mingw-w64-clang-x86_64-lld [###################################################################] 100% (17/44) installing mingw-w64-clang-x86_64-libwinpthread-git [###################################################################] 100% (18/44) installing mingw-w64-clang-x86_64-winpthreads-git [###################################################################] 100% (19/44) installing mingw-w64-clang-x86_64-clang [###################################################################] 100% (20/44) installing mingw-w64-clang-x86_64-expat [###################################################################] 100% (21/44) installing mingw-w64-clang-x86_64-bzip2 [###################################################################] 100% (22/44) installing mingw-w64-clang-x86_64-mpdecimal [###################################################################] 100% (23/44) installing mingw-w64-clang-x86_64-libtre-git [###################################################################] 100% (24/44) installing mingw-w64-clang-x86_64-libsystre [###################################################################] 100% (25/44) installing mingw-w64-clang-x86_64-ncurses [###################################################################] 100% (26/44) installing mingw-w64-clang-x86_64-openssl [###################################################################] 100% Optional dependencies for mingw-w64-clang-x86_64-openssl mingw-w64-clang-x86_64-ca-certificates (27/44) installing mingw-w64-clang-x86_64-termcap [###################################################################] 100% (28/44) installing mingw-w64-clang-x86_64-readline [###################################################################] 100% (29/44) installing mingw-w64-clang-x86_64-tcl [###################################################################] 100% (30/44) installing mingw-w64-clang-x86_64-sqlite3 [###################################################################] 100% (31/44) installing mingw-w64-clang-x86_64-tk [###################################################################] 100% (32/44) installing mingw-w64-clang-x86_64-tzdata [###################################################################] 100% (33/44) installing mingw-w64-clang-x86_64-python [###################################################################] 100% (34/44) installing mingw-w64-clang-x86_64-clang-analyzer [###################################################################] 100% (35/44) installing mingw-w64-clang-x86_64-clang-tools-extra [###################################################################] 100% (36/44) installing mingw-w64-clang-x86_64-libmangle-git [###################################################################] 100% (37/44) installing mingw-w64-clang-x86_64-lua [###################################################################] 100% (38/44) installing mingw-w64-clang-x86_64-python-six [###################################################################] 100% (39/44) installing mingw-w64-clang-x86_64-lldb [###################################################################] 100% (40/44) installing mingw-w64-clang-x86_64-llvm-openmp [###################################################################] 100% (41/44) installing mingw-w64-clang-x86_64-make [###################################################################] 100% (42/44) installing mingw-w64-clang-x86_64-pkgconf [###################################################################] 100% (43/44) installing mingw-w64-clang-x86_64-tools-git [###################################################################] 100% (44/44) installing mingw-w64-clang-x86_64-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #mingw-w64-clang-x86_64-arm-none-eabi-toolchainpacman -S --needed mingw-w64-clang-x86_64-arm-none-eabi-toolchainmingw-w64-clang-x86_64-avr-toolchainpacman -S --needed mingw-w64-clang-x86_64-avr-toolchainmingw-w64-clang-x86_64-riscv64-unknown-elf-toolchainpacman -S --needed mingw-w64-clang-x86_64-riscv64-unknown-elf-toolchainclangarm64mingw-w64-clang-aarch64-toolchainAdministrator@VM-WIN10 MSYS ~ # pacman -S --needed mingw-w64-clang-aarch64-toolchain :: There are 21 members in group mingw-w64-clang-aarch64-toolchain: :: Repository clangarm64 1) mingw-w64-clang-aarch64-clang 2) mingw-w64-clang-aarch64-clang-analyzer 3) mingw-w64-clang-aarch64-clang-libs 4) mingw-w64-clang-aarch64-clang-tools-extra 5) mingw-w64-clang-aarch64-compiler-rt 6) mingw-w64-clang-aarch64-crt-git 7) mingw-w64-clang-aarch64-headers-git 8) mingw-w64-clang-aarch64-libc++ 9) mingw-w64-clang-aarch64-libmangle-git 10) mingw-w64-clang-aarch64-libunwind 11) mingw-w64-clang-aarch64-libwinpthread-git 12) mingw-w64-clang-aarch64-lld 13) mingw-w64-clang-aarch64-lldb 14) mingw-w64-clang-aarch64-llvm 15) mingw-w64-clang-aarch64-llvm-libs 16) mingw-w64-clang-aarch64-llvm-openmp 17) mingw-w64-clang-aarch64-make 18) mingw-w64-clang-aarch64-pkgconf 19) mingw-w64-clang-aarch64-tools-git 20) mingw-w64-clang-aarch64-winpthreads-git 21) mingw-w64-clang-aarch64-winstorecompat-git Enter a selection (default=all): resolving dependencies... looking for conflicting packages... Packages (44) mingw-w64-clang-aarch64-bzip2-1.0.8-3 mingw-w64-clang-aarch64-expat-2.6.2-1 mingw-w64-clang-aarch64-gettext-runtime-0.22.5-2 mingw-w64-clang-aarch64-libffi-3.4.6-1 mingw-w64-clang-aarch64-libiconv-1.17-4 mingw-w64-clang-aarch64-libsystre-1.0.1-5 mingw-w64-clang-aarch64-libtre-git-r177.07e66d0-2 mingw-w64-clang-aarch64-libxml2-2.12.9-1 mingw-w64-clang-aarch64-lua-5.4.7-2 mingw-w64-clang-aarch64-mpdecimal-4.0.0-1 mingw-w64-clang-aarch64-ncurses-6.4.20231217-1 mingw-w64-clang-aarch64-openssl-3.3.1-1 mingw-w64-clang-aarch64-python-3.11.9-1 mingw-w64-clang-aarch64-python-six-1.16.0-4 mingw-w64-clang-aarch64-readline-8.2.010-1 mingw-w64-clang-aarch64-sqlite3-3.46.0-1 mingw-w64-clang-aarch64-tcl-8.6.13-1 mingw-w64-clang-aarch64-termcap-1.3.1-7 mingw-w64-clang-aarch64-tk-8.6.13-1 mingw-w64-clang-aarch64-tzdata-2024a-1 mingw-w64-clang-aarch64-xz-5.6.2-2 mingw-w64-clang-aarch64-zlib-1.3.1-1 mingw-w64-clang-aarch64-zstd-1.5.6-2 mingw-w64-clang-aarch64-clang-18.1.8-1 mingw-w64-clang-aarch64-clang-analyzer-18.1.8-1 mingw-w64-clang-aarch64-clang-libs-18.1.8-1 mingw-w64-clang-aarch64-clang-tools-extra-18.1.8-1 mingw-w64-clang-aarch64-compiler-rt-18.1.8-1 mingw-w64-clang-aarch64-crt-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-headers-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-libc++-18.1.8-1 mingw-w64-clang-aarch64-libmangle-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-libunwind-18.1.8-1 mingw-w64-clang-aarch64-libwinpthread-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-lld-18.1.8-1 mingw-w64-clang-aarch64-lldb-18.1.8-1 mingw-w64-clang-aarch64-llvm-18.1.8-1 mingw-w64-clang-aarch64-llvm-libs-18.1.8-1 mingw-w64-clang-aarch64-llvm-openmp-18.1.8-1 mingw-w64-clang-aarch64-make-4.4.1-2 mingw-w64-clang-aarch64-pkgconf-1~2.2.0-1 mingw-w64-clang-aarch64-tools-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-winpthreads-git-12.0.0.r81.g90abf784a-1 mingw-w64-clang-aarch64-winstorecompat-git-12.0.0.r81.g90abf784a-1 Total Download Size: 222.18 MiB Total Installed Size: 1534.37 MiB :: Proceed with installation? [Y/n] Y :: Retrieving packages... mingw-w64-clang-aarch64-clang-18.1.8-1-any 33.7 MiB 17.5 MiB/s 00:02 [###################################################################] 100% mingw-w64-clang-aarch64-llvm-libs-18.1.8-1-any 24.2 MiB 9.85 MiB/s 00:02 [###################################################################] 100% mingw-w64-clang-aarch64-clang-libs-18.1.8-1-any 19.2 MiB 5.35 MiB/s 00:04 [###################################################################] 100% mingw-w64-clang-aarch64-openssl-3.3.1-1-any 7.3 MiB 5.45 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-aarch64-llvm-18.1.8-1-any 68.9 MiB 14.0 MiB/s 00:05 [###################################################################] 100% mingw-w64-clang-aarch64-headers-git-12.0.0.r81.g90abf784a-1-any 6.0 MiB 6.65 MiB/s 00:01 [###################################################################] 100% mingw-w64-clang-aarch64-python-3.11.9-1-any 23.0 MiB 4.37 MiB/s 00:05 [###################################################################] 100% mingw-w64-clang-aarch64-clang-tools-extra-18.1.8-1-any 14.7 MiB 5.11 MiB/s 00:03 [###################################################################] 100% mingw-w64-clang-aarch64-lldb-18.1.8-1-any 5.1 MiB 10.3 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-lld-18.1.8-1-any 2.7 MiB 13.4 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-tcl-8.6.13-1-any 2.6 MiB 16.6 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-tk-8.6.13-1-any 1985.3 KiB 9.50 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-sqlite3-3.46.0-1-any 1846.8 KiB 9.59 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-crt-git-12.0.0.r81.g90abf784a-1-any 1777.0 KiB 7.92 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-ncurses-6.4.20231217-1-any 1734.9 KiB 9.06 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libc++-18.1.8-1-any 1506.6 KiB 10.5 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libxml2-2.12.9-1-any 1063.7 KiB 6.66 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-xz-5.6.2-2-any 758.3 KiB 5.97 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libiconv-1.17-4-any 713.9 KiB 5.58 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-zstd-1.5.6-2-any 484.0 KiB 3.78 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-llvm-openmp-18.1.8-1-any 452.0 KiB 2.57 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-readline-8.2.010-1-any 417.7 KiB 2.36 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-lua-5.4.7-2-any 325.7 KiB 1589 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-tools-git-12.0.0.r81.g90abf784a-1-any 285.3 KiB 1413 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-gettext-runtime-0.22.5-2-any 285.3 KiB 2.56 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-tzdata-2024a-1-any 228.6 KiB 2.38 MiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-expat-2.6.2-1-any 153.8 KiB 1398 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-mpdecimal-4.0.0-1-any 144.7 KiB 927 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-make-4.4.1-2-any 132.3 KiB 938 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-clang-analyzer-18.1.8-1-any 121.8 KiB 870 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-zlib-1.3.1-1-any 94.2 KiB 856 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-pkgconf-1~2.2.0-1-any 82.3 KiB 748 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-bzip2-1.0.8-3-any 81.7 KiB 403 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libtre-git-r177.07e66d0-2-any 79.2 KiB 390 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-compiler-rt-18.1.8-1-any 75.6 KiB 404 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libunwind-18.1.8-1-any 49.8 KiB 453 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libffi-3.4.6-1-any 46.0 KiB 267 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-winpthreads-git-12.0.0.r81.g90abf784a-1-any 39.5 KiB 280 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libwinpthread-git-12.0.0.r81.g90abf784a-1-any 35.7 KiB 190 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-winstorecompat-git-12.0.0.r81.g90abf784a-1-any 28.4 KiB 258 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-python-six-1.16.0-4-any 28.3 KiB 259 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-termcap-1.3.1-7-any 27.7 KiB 178 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libsystre-1.0.1-5-any 11.7 KiB 93.8 KiB/s 00:00 [###################################################################] 100% mingw-w64-clang-aarch64-libmangle-git-12.0.0.r81.g90abf784a-1-any 20.7 KiB 111 KiB/s 00:00 [###################################################################] 100% Total (44/44) 222.2 MiB 29.7 MiB/s 00:07 [###################################################################] 100% (44/44) checking keys in keyring [###################################################################] 100% (44/44) checking package integrity [###################################################################] 100% (44/44) loading package files [###################################################################] 100% (44/44) checking for file conflicts [###################################################################] 100% (44/44) checking available disk space [###################################################################] 100% :: Processing package changes... ( 1/44) installing mingw-w64-clang-aarch64-libunwind [###################################################################] 100% ( 2/44) installing mingw-w64-clang-aarch64-libc++ [###################################################################] 100% ( 3/44) installing mingw-w64-clang-aarch64-libffi [###################################################################] 100% ( 4/44) installing mingw-w64-clang-aarch64-libiconv [###################################################################] 100% ( 5/44) installing mingw-w64-clang-aarch64-gettext-runtime [###################################################################] 100% ( 6/44) installing mingw-w64-clang-aarch64-xz [###################################################################] 100% ( 7/44) installing mingw-w64-clang-aarch64-zlib [###################################################################] 100% ( 8/44) installing mingw-w64-clang-aarch64-libxml2 [###################################################################] 100% /tmp/alpm_CunSFE/.INSTALL: line 6: clangarm64/bin/xmlcatalog.exe: cannot execute binary file: Exec format error error: command failed to execute correctly Optional dependencies for mingw-w64-clang-aarch64-libxml2 mingw-w64-clang-aarch64-python: Python bindings [pending] ( 9/44) installing mingw-w64-clang-aarch64-zstd [###################################################################] 100% (10/44) installing mingw-w64-clang-aarch64-llvm-libs [###################################################################] 100% (11/44) installing mingw-w64-clang-aarch64-llvm [###################################################################] 100% (12/44) installing mingw-w64-clang-aarch64-clang-libs [###################################################################] 100% (13/44) installing mingw-w64-clang-aarch64-compiler-rt [###################################################################] 100% (14/44) installing mingw-w64-clang-aarch64-headers-git [###################################################################] 100% (15/44) installing mingw-w64-clang-aarch64-crt-git [###################################################################] 100% (16/44) installing mingw-w64-clang-aarch64-lld [###################################################################] 100% (17/44) installing mingw-w64-clang-aarch64-libwinpthread-git [###################################################################] 100% (18/44) installing mingw-w64-clang-aarch64-winpthreads-git [###################################################################] 100% (19/44) installing mingw-w64-clang-aarch64-clang [###################################################################] 100% (20/44) installing mingw-w64-clang-aarch64-expat [###################################################################] 100% (21/44) installing mingw-w64-clang-aarch64-bzip2 [###################################################################] 100% (22/44) installing mingw-w64-clang-aarch64-mpdecimal [###################################################################] 100% (23/44) installing mingw-w64-clang-aarch64-libtre-git [###################################################################] 100% (24/44) installing mingw-w64-clang-aarch64-libsystre [###################################################################] 100% (25/44) installing mingw-w64-clang-aarch64-ncurses [###################################################################] 100% (26/44) installing mingw-w64-clang-aarch64-openssl [###################################################################] 100% Optional dependencies for mingw-w64-clang-aarch64-openssl mingw-w64-clang-aarch64-ca-certificates (27/44) installing mingw-w64-clang-aarch64-termcap [###################################################################] 100% (28/44) installing mingw-w64-clang-aarch64-readline [###################################################################] 100% (29/44) installing mingw-w64-clang-aarch64-tcl [###################################################################] 100% (30/44) installing mingw-w64-clang-aarch64-sqlite3 [###################################################################] 100% (31/44) installing mingw-w64-clang-aarch64-tk [###################################################################] 100% (32/44) installing mingw-w64-clang-aarch64-tzdata [###################################################################] 100% (33/44) installing mingw-w64-clang-aarch64-python [###################################################################] 100% (34/44) installing mingw-w64-clang-aarch64-clang-analyzer [###################################################################] 100% (35/44) installing mingw-w64-clang-aarch64-clang-tools-extra [###################################################################] 100% (36/44) installing mingw-w64-clang-aarch64-libmangle-git [###################################################################] 100% (37/44) installing mingw-w64-clang-aarch64-lua [###################################################################] 100% (38/44) installing mingw-w64-clang-aarch64-python-six [###################################################################] 100% (39/44) installing mingw-w64-clang-aarch64-lldb [###################################################################] 100% (40/44) installing mingw-w64-clang-aarch64-llvm-openmp [###################################################################] 100% (41/44) installing mingw-w64-clang-aarch64-make [###################################################################] 100% (42/44) installing mingw-w64-clang-aarch64-pkgconf [###################################################################] 100% (43/44) installing mingw-w64-clang-aarch64-tools-git [###################################################################] 100% (44/44) installing mingw-w64-clang-aarch64-winstorecompat-git [###################################################################] 100% Administrator@VM-WIN10 MSYS ~ #mingw-w64-clang-aarch64-arm-none-eabi-toolchainpacman -S --needed mingw-w64-clang-aarch64-arm-none-eabi-toolchainmingw-w64-clang-aarch64-avr-toolchainpacman -S --needed mingw-w64-clang-aarch64-avr-toolchainmingw-w64-clang-aarch64-riscv64-unknown-elf-toolchainpacman -S --needed mingw-w64-clang-aarch64-riscv64-unknown-elf-toolchain配置环境变量配置环境变量的目的是可在 windows 命令行直接使用 gcc 指令,同时可配合其他软件使用,如 VSCode、Notepad++ 等,可搭建一个简单的 IDE 。我这里选择安装的是 mingw-w64-ucrt-x86_64-toolchain 编译器,安装目录在 D:\nosetup-tools\msys64\ucrt64\,需要在 Windows 系统环境变量 PATH 中添加如下路径D:\nosetup-tools\msys64\ucrt64\bin那么为了方便开发过程中对环境变量的管理,这里我不直接在 PATH 变量中直接添加路径,而是新建一个 devenv 变量,这个变量专门存放开发工具的路径环境,然后再将 devenv 变量添加到 PATH 中,最终与直接添加效果一样,但更好管理。
2024年09月06日
11 阅读
0 评论
0 点赞