万年历 购物 网址 日历 小说 | 三峰软件 天天财富 小游戏 视频推荐 小游戏
TxT小说阅读器
↓小说语音阅读,小说下载↓
一键清除系统垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放,产品展示↓
首页  日历2024  日历2025  日历2026  日历知识  | 每日头条  视频推荐  数码知识 两性话题 情感天地 心理咨询 旅游天地 | 明星娱乐 电视剧  职场天地  体育  娱乐 
日历软件  煮酒论史  历史 中国历史 世界历史 春秋战国 三国 唐朝 宋朝 明朝 清朝 哲学 厚黑学 心理学 | 文库大全  文库分类 
电影票房 娱乐圈 娱乐 弱智 火研 中华城市 仙家 六爻 佛门 风水 钓鱼 双色球 戒色 航空母舰 网球 乒乓球 足球 nba 象棋 体操
    
  知识库 -> 数码 -> 如何评价 GCC 15.1 发布? -> 正文阅读

[数码]如何评价 GCC 15.1 发布?

[收藏本文] 【下载本文】
GNU GCC 15.1已于2025年4月25日 10:52:00 GMT发布。 过去的问题:如何评价 GCC 14.1 发布? 如何评价 GCC 1…
import std!
必须给好评,C++23 核心语言已经基本完成,libstdc++ 虽然还有所欠缺,但仅仅是 import std 这一点就非常值得给一个好评。
小插曲:默认 -std=gnu23 炸了一大片用 C 写的库,GCC 自身依赖的为数不多的几个库中就炸了至少两个,gmp 和 iconv;工具链的标配 GDB 和 GNU Make 也炸了。(全都是因为 C23 改了函数声明空括号的含义,以前是非原型声明,接受任意参数,现在和 C++ 一样,是不接受任何参数的原型声明。也就是说,C89 引入函数的原型声明,到今天都还没被完全接受。)


代码修改自 @南山烟雨珠江潮 在 GCC 14.1 中的回答
Windows 用户可以用 MinGW Lite 项目发布的包:
Releases · redpanda-cpp/mingw-lite?github.com/redpanda-cpp/mingw-lite/releases
Linux 和 BSD 用户自行编译则非常容易:

# GCC 依赖 gmp、mpfr、mpc 库。ports 系统,Arch、Gentoo、BSD 等,通常不需要额外操作。
# 非 ports 系统通常会拆包,可以手动安装相关开发包,也可以用 GCC 自带的辅助脚本下载源码,构建脚本会自动编译。
./contrib/download_prerequisites

# 正式开始
# 加上 --enable-static --disable-shared 参数之后,GCC 编译出来的程序
# 静态链接 libstdc++ 和 libgcc,动态链接 libc 和其他库,不会遇到运行时找不到符号的问题。
./configure \
  --prefix= \
  --enable-languages=c,c++ \
  --enable-static \
  --disable-shared \
  --disable-bootstrap \
  --disable-multilib \
  CFLAGS="-O2" \
  CXXFLAGS="-O2" \
  LDFLAGS="-s"

# 编译的时候计一下时,参考:锐龙 5950X 16C32T 用时 3 分 20 秒
# (不是线性的,configure 一核有难,众核围观)
# BSD 可能需要用 gmake
time make -j$(nproc)

# 安装目录用 DESTDIR 指定,可以任意修改,安装后也可以任意复制/移动到其他位置。
make install DESTDIR=~/gcc-15

手动编译的话,GCC 有一个很实用的参数 -fsearch-include-path,表示在头文件搜索路径下搜索源文件,不需要指定 std 模块源文件的完整路径。

# 首先编译 std 模块生成 CMI (gcm.cache),参数不变不用重新编译
g++ -std=c++23 -fmodules -O2 -c -fmodule-only -fsearch-include-path bits/std.cc

# 然后就可以编译自己的源文件了
g++ -std=c++23 -fmodules -O2 main.cc -o main

上图 IDE 是小熊猫C++,当前测试版对 GCC 标准库模块提供了实验性支持。(真的非常实验性,实现得非常暴力,勾选了相关选项之后给编译命令加上 -fsearch-include-path bits/std.cc bits/std.compat.cc 参数。)
小熊猫C++ GitHub Action 自动构建版本?github.com/royqh1979/RedPanda-CPP/actions/workflows/build.yml
Xmake 前几天刚刚修好 Windows 上的路径问题,推荐使用(用最新的 dev 或 master 版本):
Releases · xmake-io/xmake?github.com/xmake-io/xmake/releases
检查Docker镜像时简直不敢相信,头天刚升级了GCC-14.2,怎么又15.1了……研读了一会COBOL,忽略,然后升级OJ的GCC,试验个把小时,支持了import std;的写法。评测发现短程序的内存增多了,以前C语言800KB、C++1.5MB的驻留集,现在要3MB多。
gcc14炸了一堆库,buildroot到现在依旧充斥着fix gcc14的patch,gcc15目前我已知的,炸了gdb
Windows ARM64 MinGW target 正在做,当然就目前这完成度,15.1 肯定是没法用的。
不知道 16.1 会不会有。
项目主页:
https://github.com/Windows-on-ARM-Experiments
另外 Cygwin 的移植也在同步进行,也在上面的项目里,bash 已经跑起来了。
就 Cygwin 的那堆黑魔法,我反正不抱太大希望。


我嘞个import std啊
-fpermissive 是你在 gcc 15.1 遇到问题的时候能大概率绕过错误的办法。
目前已经跑通了之前 14.x 需要修改 gcc 源码才能完成编译的 CPU2006。
送礼物
还没有人送礼物,鼓励一下作者吧
import std
我超,冰!
让我惊讶的是把COBOL语言给整合进去了,虽然我还是理解不了zos之外的COBOL用途到底在哪


编译更新gcc15
最近几天gentoo更新了gcc15,等我更新完试试来评价
成功了,可以import std;


继续写古早C++
import std!
看来我还是太传统了,接受不了 import std
观望一年半载后再升级
[收藏本文] 【下载本文】
   数码 最新文章
华为刚刚发布的新机华为畅享 80 搭载了麒麟
如果你手机里第33张照片突然开始攻击你,你
如何看待荣耀 GT Pro 价格 3699 元起?对友
为什么 CCD 相机在数码摄影普及的今天突然「
瑞幸同款饮品不同手机 3 种价格,客服称不同
如何看待英伟达被曝未来将推24GB的 RTX 508
为什么现在键盘鼠标的电池那么小?做大些是
为什么知乎都在劝退计算机国企?
如何看待小米王腾回应被拍拿着iPhone登机?
大学生寒假预计购买新电脑,有没有高性能全
上一篇文章      下一篇文章      查看所有文章
加:2025-04-27 20:50:15  更:2025-04-28 09:53:07 
 
娱乐生活: 电影票房 娱乐圈 娱乐 弱智 火研 中华城市 印度 仙家 六爻 佛门 风水 古钱币交流专用 钓鱼 双色球 航空母舰 网球 乒乓球 中国女排 足球 nba 中超 跑步 象棋 体操 戒色 上海男科 80后
足球: 曼城 利物浦队 托特纳姆热刺 皇家马德里 尤文图斯 罗马 拉齐奥 米兰 里昂 巴黎圣日尔曼 曼联
  网站联系: qq:121756557 email:121756557@qq.com  知识库