0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GCC将加入对Rust的支持

芯长征科技 来源:半导体行业观察 作者:半导体行业观察 2022-12-13 10:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

据报道,GCC 的 Rust 前端项目 Gccrs 已被批准合并到 GCC 主干,这意味着下一个版本的 GCC 将能编译 Rust 源代码。

报道指出,GCC Rust 补丁基于上游 GNU Compiler Collection 代码库重新编写,并为新的前端设置了布局骨架,还为 i386 和 ARM 提供初始 target hook,然后开始布局前端代码。此外,GCC 编译器支持的目标 (targets) 数量要远远多于标准的 Rust 编译器。

通过将 GCC 作为后端集成到 rustc 中,可以更好地实现支持这些 target。除了 LLVM 之外,rustc master 还为 Cranelift(更快的调试编译)和 GCC(访问不支持 LLVM 的架构)提供了开发中的后端。

开发者 Arthur Cohen 表示 Gccrs 仍处于实验性阶段,在发布之前会进行大量更改。

GCC Rust 的代码仍然需要更仔细的审查。按照计划,它有可能作为 GCC 13 的一部分而亮相,GCC 13 将于 2023 年 4 月左右发布稳定版,其对 Rust 语言的支持有希望达到 beta 级别。

维基百科显示,Rust是由Mozilla主导开发的通用、编译型编程语言。设计准则为“安全、并发、实用”,支持函数式、并发式、过程式以及面向对象的编程风格。

Rust语言原本是Mozilla员工Graydon Hoare的私人计划,而Mozilla于2009年开始赞助这个计划 ,并且在2010年首次公开。也在同一年,其编译器原始码开始由原本的OCaml语言转移到用Rust语言,进行自举(英语:Bootstrapping (compilers))工作,称做“rustc”,并于2011年实际完成。这个可自我编译的编译器在架构上采用了LLVM做为它的后端。

GNU编译器套装(英语:GNU Compiler Collection,缩写为GCC)则是GNU计划制作的一种最佳化编译器,支援各种程序语言、操作系统电脑系统结构。该编译器是以GPL及LGPL授权条款所发行的自由软件,也是GNU计划的关键部分,还是GNU工具链的主要组成部份之一。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。1985年由理察·马修·斯托曼开始发展,现在由自由软件基金会负责维护工作。截至2019年,GCC大约有1500万行代码,是现存最大的自由程序之一。它在自由软件的发展中发挥了重要作用,不仅是一个工具,还是一个典例。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源代码
    +关注

    关注

    96

    文章

    2953

    浏览量

    70632
  • 编译
    +关注

    关注

    0

    文章

    696

    浏览量

    35275
  • Rust
    +关注

    关注

    1

    文章

    241

    浏览量

    7649

原文标题:GCC将加入对Rust的支持

文章出处:【微信号:芯长征科技,微信公众号:芯长征科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MathWorks 加入 EDGE AI FOUNDATION,推进面向工程化系统的嵌入式 AI 发展

    全新合作支持工程师在 MATLAB 和 PyTorch 中构建 AI 模型,将其集成到系统仿真中,并部署到嵌入式设备 MathWorks 近期宣布加入 EDGE AI FOUNDATION。该组织
    的头像 发表于 04-17 15:46 89次阅读

    Perforce 静态分析现已正式支持 Rust语言!

    您是否正计划通过 Rust 编程来提升内存安全性,却又担心它无法覆盖所有的安全漏洞?Perforce QAC 和 Klocwork 现在已支持分析 Rust 代码,填补了开源代码检查工具在质量和治理工具链方面的空白。
    的头像 发表于 04-08 15:38 426次阅读
    Perforce 静态分析现已正式<b class='flag-5'>支持</b> <b class='flag-5'>Rust</b>语言!

    「社区开发者说」张诗淇:我的Rust构建RT-Thread安全组件项目之旅,献给所有开源社区的你

    仅关于如何为RT-Thread添加Rust支持,更关于一个年轻开发者如何找到热爱的方向、克服挑战并感受到开源协作的力量。希望她的经历,能激励更多正在观望的你,加入
    的头像 发表于 12-27 09:34 846次阅读
    「社区开发者说」张诗淇:我的<b class='flag-5'>Rust</b>构建RT-Thread安全组件项目之旅,献给所有开源社区的你

    汽车网络安全开发语言选型指南:C/C++/Rust/Java等主流语言对比+Perforce QAC/Klocwork工具支持

    汽车网络安全如何选编程语言?C、C++、Rust、Java……谁更适合AUTOSAR、ISO/SAE 21434?一文了解8种主流语言的优劣与适用场景,以及Perforce QAC/Klocwork对MISRA、CERT等规范的支持
    的头像 发表于 12-26 11:13 635次阅读
    汽车网络安全开发语言选型指南:C/C++/<b class='flag-5'>Rust</b>/Java等主流语言对比+Perforce QAC/Klocwork工具<b class='flag-5'>支持</b>

    2025开放原子开发者大会旋武开源社区Rust分论坛成功举办

    11月22日,2025开放原子开发者大会——旋武开源社区Rust分论坛在北京顺利召开。论坛以“共建中国Rust生态”为核心主题,汇聚京东、华为、vivo、阿里、毛豆教育、DORA社区及南京大学等企业与学术机构技术专家,及众多Rust
    的头像 发表于 11-27 14:55 783次阅读

    2025开放原子开发者大会旋武社区Rust分论坛即将启幕

    在数字化转型持续深化、系统安全与性能需求愈发迫切的当下,Rust凭借强大的内存安全、高并发性能和卓越的开发者体验,正成为重塑软件开发疆界的关键力量,更是构建下一代可靠高效基础设施的核心选择。11月
    的头像 发表于 11-13 10:00 707次阅读

    怎么能让riscv32-unknown-elf-gcc支持e203?

    --prefix=/opt/riscv32 --with-arch=rv32imac --with-abi=ilp32 后 make 生成的riscv32-unknown-elf-gcc编译出来的程序无法在e203跑起来。 怎么能让riscv32-unknown-elf-gcc
    发表于 11-10 07:06

    RusT-Thread:基于Rust面向资源受限嵌入式设备的操作系统的实践 | 技术集结

    RT-Thread为基础,使用Rust语言重构其内核,形成了全新的RusT-Thread系统。系统采用模块化架构,涵盖内核服务、进程调度、内存管理、线程通信与时钟控制等核心
    的头像 发表于 11-07 17:37 7042次阅读
    <b class='flag-5'>RusT</b>-Thread:基于<b class='flag-5'>Rust</b>面向资源受限嵌入式设备的操作系统的实践 | 技术集结

    飞凌嵌入式ElfBoard-Vim编辑器之GCC的基本使用

    。elf@ubuntu:~/work/example/hello$ gcc -S hello.i通过vim hello.s命令可以看到文件中都是汇编语句。3)汇编在终端输入gcc –c hello.s汇编语句生成
    发表于 10-16 09:05

    飞凌嵌入式ElfBoard-Vim编辑器之GCC编译器的安装

    GCC(GNU Compiler Collection)是由GNU开发的编程语言编译器,最初是作为GNU操作系统的编译器编写的。GCC是一个编译器套件,包含很多软件包,支持多种语言编译。GCC
    发表于 10-15 08:44

    为什么 GCC 项目导入 NuEclipse 失败?

    为什么 GCC 项目导入 NuEclipse 失败?
    发表于 09-01 08:05

    如何GCC项目导入NuEclipse?

    如何GCC项目导入NuEclipse?
    发表于 09-01 07:04

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    大家好,我们是中国科学技术大学操作系统原理与设计(H)课oooooS小组。这个项目是我们的课程大作业:参考RT-Thread架构,使用Rust搭建一个原生的嵌入式操作系统内核。初识Rust是因为xk
    的头像 发表于 08-02 11:03 3708次阅读
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全内核 <b class='flag-5'>RusT</b>-Thread 的诞生

    CW32L010 MCU在VSCode+GCC+EIDE+JLink下的使用示例

    CW32L010 MCU 在VSCode+GCC+ EIDE + JLink 下的使用示例: 1、点击VSCode左边栏中的Extensions,在EXTENSIONS:MARKETPLACE搜索
    的头像 发表于 07-01 14:52 1232次阅读
    CW32L010 MCU在VSCode+<b class='flag-5'>GCC</b>+EIDE+JLink下的使用示例

    请问OpenVINO™ 是否支持 Rust 绑定?

    无法确定OpenVINO™是否支持 Rust 绑定。
    发表于 06-25 07:45