我正在建立一个新的架构堆栈,在旧的(当前状态)堆栈中,我将 GCC 3.4.3 用于我的 C 文件。由于我正在更新到更新的操作系统,因此想知道我是否可以继续在我的 future 状态堆栈中使用现有的 C 文件(与 GCC 3.4.3 一起使用) - 它将使用 GCC 8.2。我宁愿不必用 C++ 重写文件,除非必须这样做。
GCC 8.2 是否向后兼容 GCC 3.4.3?如果不兼容,成本可能是多少?
最佳答案
编译器版本比操作系统本身重要得多。对底层库 API 的更改(至少是 C 标准库之外的 API)将造成最大的麻烦。
C 语言本身在那段时间没有发生重大变化,或者至少没有发生会导致很多问题的方式。您可能需要更新一些 #ifdef
类型语句以反射(reflect)较新的编译器约定,但仅此而已。
关于从 GCC 3.4.3 迁移到 GCC 8.2 时可以保留现有的 C 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60119278/