Rust 1.8发布,放弃了Unix系统的Make编译系统

jopen 8年前
   <p><img alt="" src="https://simg.open-open.com/show/366df4994f69cc2c6e1645c39d452c06.png" /></p>    <p>Mozilla上周发布了Rust 1.8,一个系统级别的编程语言,提供与C语言相当的编译速度,和高级别的安全性。这次更新最值得关注的是,Rust放弃了Unix系统的<a href="/misc/goto?guid=4958989983023441696">Make</a>工具,使用Rust自己的<a href="/misc/goto?guid=4958989983121229068">Cargo包管理工具</a>。</p>    <p>为了实现自托管,减少对外部工具的依赖,Rust必须通过自己的语言构建一些工具。其他语言也大多都经过这个过程。Google的Go语言,从<a href="/misc/goto?guid=4958961170049391690">1.5版本</a>开始,其编译器和解释器都由Go语言实现(有一小部分用了汇编),放弃了基于C语言的工具。</p>    <p>从Make换到Cargo的<a href="/misc/goto?guid=4958989983238926105">原因</a>,是因为很多程序员抱怨,部署大型的应用时,会遇到很多多语言方面的困难。比如,他们说现在的基于Make的编译系统“在这个星球上只有一小部分人能够熟练使用”,就是说,对大多数Rust开发者来说并不友好——这对<a href="/misc/goto?guid=4958989983339883709">以友好的开发环境著称的Rust</a>是不能容忍的。</p>    <p>Rust放弃Make编译系统的另一个原因是可移植性。在Windows环境下使用MSVC工具需要“疯狂、古怪的技巧运行不同版本的工具,特别是配置脚本和编译工具的时候。”Rust的开发者说。随着兼容性的信息逐渐分离出来,社区可以更好地应用这些信息。</p>    <p>同样,改变编译系统使Rust标准库和编译器可以使用4600以上个<a href="/misc/goto?guid=4958965628442379397">尚已存在的Cargo包</a>。</p>    <p>Rust并没有结业通过MSVC编译的问题。很多新的开发语言——当然并不是微软支持的——的用户都会因为平台古怪的编译过程使用户受挫。Rust已经解决了自身的问题,从1.8版本开始,32位Windows系统<a href="/misc/goto?guid=4958989983454353687">可以</a>正常地<a href="/misc/goto?guid=4958989983556299842">处理错误</a>。长期来看,这项举措可以有效地避免这个坑。</p>    <p>来自: <a href="/misc/goto?guid=4958989983651680759" rel="nofollow">http://geek.csdn.net/news/detail/68708</a></p>