首页 > 解决方案 > 从 GCC 3.4.3 迁移到 GCC 8.2 时,我可以保留现有的 C 文件吗?

问题描述

我正在建立一个新的架构堆栈,并且在旧的(当前状态)堆栈中,我将 GCC 3.4.3 用于我的 C 文件。由于我正在更新到更新的操作系统,我想知道我是否可以在我的未来状态堆栈中继续使用我现有的 C 文件(适用于 GCC 3.4.3)——它将使用 GCC 8.2。我宁愿不必用 C++ 重写文件,除非我必须这样做。

GCC 8.2 是否向后兼容 GCC 3.4.3,如果不是,成本是多少?

标签: cgcc

解决方案


编译器版本的重要性远低于操作系统本身。对底层库的 API 的更改,至少是 C 标准库之外的那些,将造成最大的麻烦。

在那段时间里,C 语言本身并没有发生太大的变化,或者至少没有以一种会导致很多问题的方式发生变化。您可能需要更新一些#ifdef类型语句以反映较新的编译器约定,但仅此而已。


推荐阅读