首页 >>  正文

linux常用编译器

来源:baiyundou.net   日期:2024-09-23

【CSDN 编者按】基于种种原因,Linux 6.3 彻底告别了对英特尔编译器的支持。从真正意义上来说,放弃对 ICC 的支持不会带来任何损失。

整理 | 王子彧

出品 | CSDN(ID:CSDNnews)

3月5日,Linus Torvalds 正式发布了 Linux 6.3 的首个版本,Linux Kernel 6.3-rc1,关闭了合并窗口。之前谈论火热的 Linux 内核拟放弃支持英特尔 ICC 编译器的话题最终有了定数。在 Linux 6.3 内核合并窗口打开的最后一天,Linus Torvalds 合并了 “删除 Intel ICC 编译器支持” 补丁,从内核中移除了 Intel ICC 编译器的支持代码。

是时候放弃了

早在去年10月,Linux 开发人员 Masahiro Yamada 就提出了放弃英特尔 ICC 编译器支持的想法。他在邮件中指出:

Linux 内核迎合 ICC 编译器的头文件(include/linux/compiler-intel.h)已经3年没有更新,不少开发者或用户已经忘记,甚至都不知道内核中还有 ICC 支持。同时,Intel 自家已经弃用该编译器,他们正转向到基于 LLVM/Clang 的现代英特尔 DPC++ 编译器,旧版的 ICC 编译器则被称为 “英特尔 C++ 编译器经典版”。

针对 Masahiro Yamada 提出的想法,Linus Torvalds 表示支持并做出了回应:

Ack,我认为没有人真正使用过 icc。

我或许未曾听到过关于 icc 问题的任何消息,我不认为这是因为它在 emulating gcc 方面 表现“特别” 好,所以没有人遇到过任何问题。

而在当时的“放弃内核构建的 ICC” 的讨论中,也没有人站出来表示自己正在使用,或者有意向使用 ICC 来编译最新的内核代码。

目前,Linux 6.3 的合并窗口现在已经结束,Linus Torvalds 最新发布了 Linux Kernel 6.3-rc1,主要新特性包括:改进了 EXT4 文件系统 direct I/O 速度,AMD-Xilinx XDMA 驱动,通过 Automatic IBRS 优化 AMD Zen4 性能,8BitDo Pro 2 有线手柄支持,Intel TPMI 驱动,英特尔 TDX、CXL 和 LKGS 指令支持,Ath12k 无线驱动,IPv4 BIG TCP 支持,Btrfs 性能优化,移除 Intel ICC 编译器支持等等。Linux 6.3 正式版预计会在 4 月底或 5 月初发布。

结语

现在 GCC 和 LLVM/Clang 仍然是构建 Linux 内核主线的两个关键编译器选项。GCC 一直都是构建主线内核的不二之选。而在过去的几年里,LLVM/Clang 主线也已经对构建 Linux 内核做了大量的适配性的工作,还增加了针对于内核构建的各种编译器功能。

因此,基于种种原因,Linux 6.3 彻底告别了对英特尔编译器的支持。从真正意义上来说,放弃对 ICC 的支持不会带来任何损失。

参考链接:

https://www.phoronix.com/news/Linux-6.3-Drops-Intel-ICC

","gnid":"90720964ce8922b44","img_data":[{"flag":2,"img":[{"desc":"","height":"80","s_url":"https://p0.ssl.img.360kuai.com/t013d73ffee4a20366b_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t013d73ffee4a20366b.gif","width":"640"},{"desc":"","height":"390","title":"","url":"https://p0.ssl.img.360kuai.com/t01d5c98b570b741eb8.jpg","width":"647"},{"desc":"","height":"187","title":"","url":"https://p0.ssl.img.360kuai.com/t01011d5fcbd49f2787.jpg","width":"607"},{"desc":"","height":"80","s_url":"https://p0.ssl.img.360kuai.com/t018e6f0fcf6c9df4ee_1.gif","title":"","url":"https://p0.ssl.img.360kuai.com/t018e6f0fcf6c9df4ee.gif","width":"960"}]}],"original":0,"pat":"art_src_1,fts0,sts0","powerby":"hbase","pub_time":1678173430000,"pure":"","rawurl":"http://zm.news.so.com/c999e225fb673be8b6bfe865bed124cc","redirect":0,"rptid":"40aaba174bfa05a8","rss_ext":[],"s":"t","src":"CSDN","tag":[{"clk":"ktechnology_1:intel","k":"intel","u":""},{"clk":"ktechnology_1:英特尔","k":"英特尔","u":""},{"clk":"ktechnology_1:linux","k":"linux","u":""}],"title":"Linux 6.3 不再支持英特尔 ICC 编译器

邢花狄1812Linux下的开发工具有哪些 -
咸刚彩13043761228 ______ 没系统地用过,感觉linux开发工具手工配置环境比较多.一般编译器就用GCC/G++,可以编译很多语言,如ADA等.写代码的话,变态用VI,我以前装eclipse,后来改用codeblocks,现在用codelite.一般情况下安装不难,你可以直接在安装源找 到,或者在各个集成开发环境的官网下载对应的DEB或RPM包安装就行,还可以下载代码包,就configure/make/make install的输入而已.类库方面都有基本的,图形方面有替代的GNOME、QT、 wxWidgets等等,想多花俏都可以.语言连C#都可以用,具体看MONO项目,不过我没建立使用过.

邢花狄1812我想知道有关杨辉三角的C程序算法,GCC编译器的具体用法.如果答案好的话,另追加分.
咸刚彩13043761228 ______ 首先有关GCC编译器: 目前Linux下最常用的C语言编译器是GCC(GNU Compiler Collection),它是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++和Object C等语言编写的程序.GCC不仅功能非常强大,结构也异常灵活.最值得...

邢花狄1812linux下C和C++编程使用什么IDE? -
咸刚彩13043761228 ______ vim 搞好配置文件 比什么IDE 都给力 emsa 我没有学过 不过感觉没有 vim 符合 人体工程学.我用了 5年的vim 写C 感觉 vim 最好用 自动提示 什么都可以有

邢花狄1812在Linux下发布程序需要注意版本的软件包有哪些呢?
咸刚彩13043761228 ______ gcc是GNU编译器集合,包含C、C++、Java、Ada、Forturn等编译器,我们主要使用的是C和C++,它们对应的程序是gcc和g++,为了兼容BSD等UNIX系统,C编译器的...

邢花狄1812常见的C语言编译器是什么? -
咸刚彩13043761228 ______ 目前最流行的C语言编译器有以下几种: 1、GNU Compiler Collection 或称 GCC GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器.它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分. GCC原...

邢花狄1812在linux下用什么编辑器好 -
咸刚彩13043761228 ______ 如果是在终端命令行,就用Vim编辑器;如果是图形界面的编辑器,选择就比较多了,可以选择大多数Linux发行版自带的gedit(和Windows的自带软件不一样,这个gedit超好用,编写代码什么的非常方便),还可以选择像VScode、Sublime Text 3等等,都挺好的,关键是看个人喜好咯.

邢花狄1812LINUX下,用什么C\C++编程比较好?
咸刚彩13043761228 ______ 首先是得熟悉LINUX的环境,LINUX常用的命令操作.基本的熟悉后,最好找一个可以跨平台的开源项目去研究,首要任务是让它编译通过,不要小看这个工作,能编译过去也需要一定的功底,如果编译没问题了,你可以在研究他的代码,看看他和平台相关的部分是如何做的.现在很多开源都是调用GTK, wxWidgets, QT等这些跨平台的库,你也可以选择一种学习.如果你的c/c++功底好的,很容易上手的.

邢花狄1812linux Development Tools 包括哪些软件 -
咸刚彩13043761228 ______ 编辑器: vi:老牌编辑器,在各个unix和unix-like平台都可以找到 .emacs:GNU项目开发的编辑器,功能强大扩展性强,绝对不是一个编辑器那么简单 .代码打补丁工具: diff & patch:一对好搭挡,diff用来生成代码补丁,而patch则用来给代码...

邢花狄1812请问linux下cc和gcc是同一个东西吗? -
咸刚彩13043761228 ______ 一般的CC就是一个软件链接到GCC的.只不过CC是UNIX中常用的编译工具,而在linux中用的是GCC,有一些在UNIX中写好的程序要放在linux中要指定命令CC编译器,所以将CC指定为GCC.其实就是一个东西.一般的CC它就是一个软件链接,你可以使用命令:whereis cc来查看一下它在什么路径,然后你再使用ls -l命令查看一下它的详细信息,是不是在它的后面有一个箭头(-->)指向一个可执行文件.

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024