使用 extern inline 后编译报错

使用 extern inline 后编译报错

IDE 5.0 以上编译 extern inline 的函数后会产生error,在IDE4.0的版本时编译同一工程时不会报错可以正常编译。



因为IDE 4.0 gcc 版本为 4.9.3,需要使用传统模式进行编译  ,在IDE5,0 中 gcc 版本为 10.2.1 对于 inline 函数的解释标准过高,无法正常编译。
The option -fgnu89-inline tells gcc to use traditional GNU semantics for "inline" functions when in C99 mode.
根据 -fgnu89-inline 解释,在出现上述错误时可以增加 -fgnu89-inline 参数使得GCC使用 inline 的传统模式进行编译


    • Related Articles

    • RealEvo-QtSylixOS 使用手册

      RealEvo-QtSylixOS 使用手册 详见:RealEvo-IDE (SylixOS IDE)安装目录如:F:\ACOINFO\RealEvo\doc 中 doc 文件夹下的 《RealEvo-QtSylixOS使用手册》 公开链接:SylixOS 手册获取
    • 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 ...
    • HTTPS 中间件使用手册

      1. 适用范围 本文档主要用于指导 sylixos 设备使用 libcurl 及 libopenssl 实现 https 网址等访问。 2. 原理概述 curl 作为一个使用 URL 语法实现文件传输的工具,其本身支持多种通信协议,其中就包含 http 及 https,而 https 的支持需要 openssl 来辅助保证安全通信要求。 3. 准备工作 3.1 网络环境准备 https 中间件主要用于嵌入式设备与公网网站或 IP 地址的访问及交互,因此在使用 https ...
    • RealEvo-Simulator 使用手册

      RealEvo-Simulator 使用手册 详见:RealEvo-IDE (SylixOS IDE)安装目录如:F:\ACOINFO\RealEvo\doc 中 doc 文件夹下的 《RealEvo-Simulator使用手册》 公开链接:SylixOS 手册获取
    • SylixOS lite 版—基于 STM32F767 资源使用情况

      1、基本概念     代码段(text):顾名思义,代码存放的位置,在 STM32 中代码段一般存放于内置 FLASH 中; 已初始化数据段(data):已初始化数据段会分别体现在 FlASH 中和 RAM 中。因为是全局变量,运行过程中需要进行读写操作,因此占用一段 RAM 空间。又因为有初始值,其初始值需要占用 FlASH 空间。   未初始化的数据段(bss):bss 与 data 相同的地方时它也是全局变量,运行过程中需要进行读写操作,因此占用一段 RAM ...