Rust重写Gug工具链

开发 开发工具
先说一下GUN的历史我们经常把GUN和Linux放在一起讲,以为他们就是天生在一起的,经常将他们混为一谈,所有就有了Gun/Linux这种叫法。

[[387469]]

先说一下GUN的历史我们经常把GUN和Linux放在一起讲,以为他们就是天生在一起的,经常将他们混为一谈,所有就有了Gun/Linux这种叫法。其实,GUN指的是应用层的程序体系是GUN体系(遵从GPL标准的那一套),因为当年的RMS构建了整个GNU体系,却没能做出一个完整可用的内核,恰好在那个时候,Linus大神利用GNU的工具链制作出来了一个内核,取名为 Linux,而这个内核最终成为了GNU被用得最广泛的内核。

[[387470]]

 

RMS倡导的理念是Free Software自由软件,认为商业软件是不道德的,必须给用户以自由,所以要使用自由软件。所以才有今天的gcc 编译器以及emacs等等神级软件,创造了除内核以外的全部上层软件,也撰写了GPL通用发布协议,为开源软件的发展打下了坚实的法律基础。

Linux工具链

说到这里,平时我们在使用Linux操作系统的时候,其实是离不开GUN工具链的,你可以不用GCC,用Clang,不用GNU binutils,用LLVM 下的binutils,但是依然绕不过去gmake, gawk, gzip, tar, coreutils, autotools...等等。

特别是想在Windows平台上使用GUN工具链,更是难上加难,也不是没有选择,有人写了GUN在windows系统下的工具集,比如GnuWin,官网是http://gnuwin32.sourceforge.net/, 还有直接native Win32的unxutils,官网是http://unxutils.sourceforge.net/.

问题

但是这些项目都太老了,而且几乎没有人在取更新维护,看unxutils官网最近的一次发布是在2010年。

Rust重写GUN工具链

于是有人发起了用Rust重写通用的(跨平台)的cli项目,包括对GNU coreutils重写等。这个项目叫uutils, github地址:https://github.com/uutils。目前star数为7.5k。

 

其中https://github.com/uutils/coreutils是核心工具包的实现,目前已经实现了90%的工具,包括经常使用的cat,chmod,du,head,kill,mkdir等等, 具体实现了哪些可以在官方https://github.com/uutils/coreutilsgithub上看到,还有一些todo和Semi-Done实现了一半工具,也可以参与到其中。

 

写在最后目前Rust重写GUN工具的时机和条件都成熟了,就像当年RMS开发了GUN一样,当有了周边工具集生态后,有人又会用这些工具使用Rust去写内核,然后逐步替代GUN那套生态链。

本文转载自微信公众号「码小菜」,可以通过以下二维码关注。转载本文请联系码小菜公众号。

 

责任编辑:武晓燕 来源: 码小菜
相关推荐

2022-06-30 15:48:52

rustupRust

2021-05-19 10:43:28

恶意软件Rust的Buer

2023-06-12 08:00:48

Napi-rsRust 前端工具

2023-04-28 14:10:33

2021-02-04 12:06:03

HTTPDRust服务器

2023-06-28 14:18:06

2023-09-22 14:33:24

微软Rust开发工具

2022-01-14 08:45:36

编译工具SWC前端

2023-10-07 10:11:59

ViteRust

2024-01-16 10:36:41

Rust编程语言开发

2021-07-15 17:48:11

Tor项目Arti开发者

2023-08-30 13:22:00

测试框架工具

2024-03-13 15:48:43

2021-05-06 09:59:27

Rust恶意软件网络安全

2021-01-29 15:50:45

DevOps运维

2020-08-21 07:00:00

DevOpsIT开发

2021-03-06 08:05:54

工具DevOpsLighthouse

2015-08-28 09:38:51

Linux源代码分析工具

2019-12-12 09:30:31

工具代码开发

2024-03-27 14:35:09

自动验证工具
点赞
收藏

51CTO技术栈公众号