Rust 迎来重大突破!GCC 编译器来了!

文摘   科技   2024-12-01 00:47   四川  

引言

各位 Rustacean 们好!今天给大家带来一个激动人心的消息:GNU 编译器集合(GCC)正在开发一个全新的 Rust 编译器实现 —— gccrs!这将为 Rust 生态带来更多可能性,让我们一起来了解这个项目。

什么是 gccrs?

gccrs 是 GCC 项目中正在开发的 Rust 编译器。它的目标是提供与官方编译器 rustc 完全相同的行为,但基于 GCC 编译框架实现。

主要特点

  1. 支持更多平台

  • 得益于 GCC 30 多年的发展,gccrs 可以支持 LLVM 未覆盖的平台
  • 比如 SuperH 架构的 Dreamcast 游戏主机开发
  • 更强大的分析能力

    • 继承 GCC 现有的安全分析工具
    • 特别适合分析不安全的 Rust 代码
    • 对 Rust 与 C 代码交互的场景很有帮助
  • 规范贡献

    • 帮助完善 Rust 语言规范
    • 提供独特的实现视角

    使用须知

    目前 gccrs 仍在开发中,使用时需要添加特殊标记:

    # 命令行方式
    -frust-incomplete-and-experimental-compiler-do-not-use

    #
     环境变量方式
    GCCRS_INCOMPLETE_AND_EXPERIMENTAL_COMPILER_DO_NOT_USE=1

    #
     Cargo 方式
    GCCRS_EXTRA_ARGS="-frust-incomplete-and-experimental-compiler-do-not-use"

    与 rustc 的关系

    gccrs 项目有明确的几点承诺:

    1. 不会创造 GNU 特有的 Rust 变体
    2. 不会绕过 RFC 流程添加新特性
    3. 重用 rustc 的核心组件,如:
    • polonius(下一代借用检查器)
    • rustc_parse_format(格式化字符串解析)

    如何参与项目?

    如果你对编译器开发感兴趣,可以通过以下方式参与:

    1. GitHub 仓库:https://github.com/rust-gcc/gccrs
    2. Zulip 聊天平台
    3. 邮件列表:gcc-rust@gcc.gnu.org
    4. IRC 频道:#gccrust(oftc.net)

    总结

    gccrs 的出现将为 Rust 生态带来更多可能性:

    • 扩展到更多硬件平台
    • 提供更多安全分析工具
    • 帮助完善语言规范
    • 提供更多编译选择

    对于 Rust 开发者来说,这是一个值得关注的项目。虽然目前还在开发中,但随着项目的成熟,相信会给 Rust 社区带来更多机遇。

    参考文章

    1. gccrs: An alternative compiler for Rust:https://blog.rust-lang.org/2024/11/07/gccrs-an-alternative-compiler-for-rust.html

    书籍推荐

    各位 Rust 爱好者,今天为大家介绍一本《Programming Rust: Fast, Safe Systems Development》(第二版) 是由 Jim Blandy、Jason Orendorff 和 Leonora Tindall 合著的 Rust 编程指南。本书深入探讨了 Rust 语言在系统编程中的应用,着重介绍如何利用 Rust 的独特特性来平衡性能和安全性。书中涵盖了 Rust 的基础数据类型、所有权和借用概念、特征和泛型、并发编程、闭包、迭代器以及异步编程等核心内容。这本更新版基于 Rust 2021 版本,为系统程序员提供了全面而实用的 Rust 编程指导。


    1.  Rust:横扫 C/C++/Go 的性能之王?

    2.  从 Rust 开发者视角看 C++:优缺点大揭秘

    3.  Rust vs Zig:新兴系统编程语言之争

    数据科学研习社
    带你走进数据科学的世界🚀
     最新文章