deepwzh的技术笔记
  • Golang
  • Python
  • Cpp
杂项
前端开发
  • 计算机网络
  • 操作系统
  • 数据库
云原生
Devops
AIGC
关于作者
  • Golang
  • Python
  • Cpp
杂项
前端开发
  • 计算机网络
  • 操作系统
  • 数据库
云原生
Devops
AIGC
关于作者
  • Cpp
  • c++ 模块
  • 类

    • 类
    • 友元
  • 开发工具

    • 开发工具
    • Vscode

      • Vscode
      • vscode 相关插件
  • 协程

    • 协程
    • test
  • 构建工具

    • 构建工具
    • Make
    • Cmake

      • Cmake
      • 常见问题
      • cmake 基本用法
      • cmake 集成 conan
      • cmake 生成器
      • cmake 库查找
  • 链接库

    • 链接库
    • 动态链接库
  • 编译器

    • 编译器
    • gcc

      • gcc
      • 常用选项
  • 包管理工具

    • 包管理工具
    • Canan

gcc

概述

gcc 是 c++ 的最常见的编译器之一

开发计划

GCC Development Plan

根据官网的开发计划图,大约每年 4 月底到 5 月初发布新的一版编译器

每个大版本,会分为四个 stage:

阶段名称
描述
Stage 1
在此期间,可以对编译器进行任何性质的改变。特别是,主要更改可能从分支合并。第一阶段以功能驱动,将持续至少四个月。为了避免混乱,发布经理将在这一阶段开始之前要求提交即将发布的发布周期中提议的主要项目列表。他们将尝试以最小干扰的方式对项目进行排序。发布经理不会拒绝在第一阶段结束前准备就绪的项目。同样,发布经理没有特殊权力接受特定的补丁或分支,这超出了他们作为维护者的地位。发布经理的角色仅仅是尝试以有组织的方式安排主要功能的包含。
Stage 2
第二阶段已被放弃,转而采用 GCC 4.4 开发后的扩展特性第一阶段。
Stage 3
在这两个月期间,可能进行的唯一(非文档)更改是修复错误或不需要更改编译器其他部分的新的端口。在此期间不得引入新功能。
Stage 4
在此期间,可能进行的唯一(非文档)更改是修复回归的更改。其他重要错误,如错误代码、拒绝有效或构建问题也可能得到修复。在此期间的所有更改都应格外小心,以避免引入新的回归——不惜一切代价修复错误是不希望的。请注意,相同的约束也适用于发布分支。此期间将持续到下一发布周期的第 1 阶段开启。

可以看到,gcc 每年发一个版本,基本上开发周期是半年加功能,半年修 bug 了

历史版本发布时可以从这个页面去看 https://gcc.gnu.org/releases.html

子文档

  • 常用选项
Next
常用选项