SylixOS 的 GCC 编译工具链介绍

SylixOS 的 GCC 编译工具链介绍

问:翼辉的 gcc 编译工具链是基于 GNU 编译器套件的哪个版本进行优化的?
RealEvo-IDE 编译工具链说明
翼辉的 gcc 工具链是 基于 GNU 编译器套件 gcc version 4.9.3 针对不同 CPU 兼容指令集进行优化。不同架构工具链版本差异请查看具体工具链内部。



注:RealEvo-IDE(4.0.0)以前,所使用的编译器版本主要为4.9.3,是2014 年开
发的版本,随着cpu 的推陈出新和gcc 的发展,需要升级编译器方能支持新的
cpu 和体验进年来gcc 升级带来的优势,保持操作系统产品技术的先进性。2021
年中,操作系统部完成了编译器升级的工作。RealEvo-IDE(5.0.0)以后的版
本将使用如下版本的编译工具链。


    • Related Articles

    • 编译器优化导致的问题排故

      Q:编译器优化导致的问题排查方法 当 release 版本功能异常,而 debug 版本功能正常,很可能是编译器优化导致的问题。 1、首先根据代码功能大致缩小问题范围,然后可以借助 #pragma GCC optimize("O0") 这个宏来逐步注释缩小范围。 当然也可通过反汇编直接根据分析。 2、也可以通过 __attribute__((optimize("O0"))) 来禁止编译器对函数优化,如 static void rdGmacReg() ...
    • Qt5 套件编译器配置异常

      Q:Qt5 套件中无编译器且无法导入工程该如何解决? 如出现 Kits 中的 Qt Versions 界面显示红标及编译器界面无对应的 C/C++ 编译器: 当出现这两种状况及无法导入工程时,可以先关闭 Qt5 应用,再通过删除C盘 -> 用户 -> 主机名 -> AppData -> Roaming 目录下 的 QtProject 文件夹后重启 Qt5 应用即可。 原因分析: QtProject 文件夹中存储的是 Qt 的配置文件,Qt ...
    • SylixOS 工具链和标准 GCC 的区别

      Q:翼辉工具链和标准工具链 GCC 的区别? gcc 面向 xxx 操作系统一般都叫作 arm-xxx-eabi-gcc,比如 arm-sylixos-eabi-gcc。 首先,gcc 不仅是编译器,同时提供了 c/c++ 运行所必须的内建库和运行时支持,这些库要在多线程甚至多核上稳定运行,需要依赖于操作系统所提供的一些关键性原语服务,这些服务在 gcc 裸机开发工具链里面是没有的,这就存在很大风险,我们的 gcc 编译器解决了这个问题,让编译器内建库可以很好的与操作系统服务融合。 ...
    • GCC浮点相关的编译选项配置

      gcc的浮点相关编译选项配置 GCC 中的浮点相关的编译选项属于依赖于不同平台的配置选项, 本文的相关配置都是在 ARM32 平台下. SylixOS 下常用的浮点编译配置有两个 -mfpu=name, -mfloat-abi=name 测试程序 #include <stdio.h> #include <time.h> float calc(float *src_mem_32, float *dst_mem_32) {    float mem_32;    int i, j;    for ...
    • SylixOS 的编译工具链优化等级是怎样的?

      Q:SylixOS 的 IDE 开发环境中,配置工具链中的 release 和 debug 选项优化等级是怎样的? 在 SylixOS 的 IDE 中编译工具链 release 是 O2 优化等级,debug 是 O0 优化等级。