方舟编译器源代码疑似曝光,华为李小龙:来自服务器部门?

简介: 前几天,赶在华为开发者大会开幕前几天,华为已经在官方社区正式公布了方舟编译器的安装详情以及下载地址。 官方介绍称,方舟编译器是基于GCC开发的交叉编译器套件,它包括了C、C++、Fortran的前端,也包括了这些语言的库(如libstdc++、libgcc等)。

前几天,赶在华为开发者大会开幕前几天,华为已经在官方社区正式公布了方舟编译器的安装详情以及下载地址。

官方介绍称,方舟编译器是基于GCC开发的交叉编译器套件,它包括了C、C++、Fortran的前端,也包括了这些语言的库(如libstdc++、libgcc等)。HCC运行在X86 linux架构服务器上,生成的二进制运行在Aarch64架构服务器上。

来源:tsuki
链接:https://www.zhihu.com/question/338350284

image

引起争议后,华为手机产品线副总裁李小龙在微博上对“GCC套皮说”进行了辟谣,他表示:「这个网站不是华为消费者BG维护的网站,此编译器好像是服务器部门用的,和我们之前和P30一起发布的方舟编译器没有任何关系。」

链接:https://www.zhihu.com/question/338350284/answer/776111129

华为副总裁在微博说这是另一个 BG 的同名产品。那我们继续等待几天后真正的方舟编译器吧。

原答案:

下载页的开始称方舟编译器叫 HCC:

image

我们从标注着源码下载的链接这里,下载传说中的方舟编译器:

image

下载下来的 tar 包却叫 gcc-ark:

image

解压缩一看,没找到任何名称中含 ark/fangzhou/hcc/huawei 等单词的文件,却和我刚从 Arch Linux 仓库 拉下来的 gcc 交叉工具链蜜汁相似:

https://www.archlinux.org/packages/community/x86_64/aarch64-linux-gnu-gcc/

image

这里我们先忽视从源码下载链接里下载到了二进制文件这个问题。

继续运行,看起来也是个 gcc。此外贴心的 GPLv3 协议摘要,提醒着华为赶紧把它开源:

image

尝试编译个 c 代码,目标架构的确是 elf64-littleaarch64:

image

继续搜索一下编译器二进制文件里的字符串,找不到任何相关的独立单词:

image

不过倒是可以看到一些调试信息:

image

到此为止,最好的情况也只可能是华为在 gcc 上加了一些 patch,增加了一些优化 pass 等,重新打包并宣称这是其「自主研发」的新一代编译器。先不提这样的行为是否有分裂社区的嫌疑。看看其当时的宣传:

image

说好的自主研发多语言联合优化Android 上的 Java 编译器呢?

不过有人说华为开发者大会还没有召开,现在放出的这个还不是完全版。那我们就先等等,期待一下几天后放出的完全版。

希望我被打脸。毕竟我刚为华为贡献了一台 Matebook 14 的销量呢。

阅读更多

昨天,我又“装”上了Windows 1.0

热修复的几种方案,你可知否?

老板:请将你的代码进行Code Review!

一位Android大牛的BAT面试心得与经验总结

Android启动优化最佳方案:去启动页和异步初始化

Java泛型--BeanUtils.copyProperties引发的血案

欢迎关注微信公众号:终端研发部,一起交流和学习

相关文章
|
2月前
|
存储 运维 应用服务中间件
[运维日志] Web 服务器日志依日期归档(Powershell 实现,附源代码)
[运维日志] Web 服务器日志依日期归档(Powershell 实现,附源代码)
111 0
|
2月前
|
SQL 弹性计算 关系型数据库
服务器数据恢复-华为ECS云服务器mysql数据库数据恢复案例
云服务器数据恢复环境: 华为ECS云服务器,linux操作系统,mysql数据库(innodb引擎)。作为网站服务器使用。 云服务器故障: 在执行mysql数据库版本更新测试时,误将本应该在测试库上执行的sql脚本执行在生产库上了,生产库上的部分表被truncate,部分表内有少量数据被delete。 需要恢复被truncate的表以及被少量数据被delete的表。
服务器数据恢复-华为ECS云服务器mysql数据库数据恢复案例
|
2月前
|
Java 数据安全/隐私保护
Neo4j【付诸实践 01】SpringBoot集成报错org.neo4j.driver.exceptions.ClientException:服务器不支持此驱动程序支持的任何协议版本(解决+源代码)
Neo4j【付诸实践 01】SpringBoot集成报错org.neo4j.driver.exceptions.ClientException:服务器不支持此驱动程序支持的任何协议版本(解决+源代码)
209 1
|
2月前
|
存储 运维 数据挖掘
服务器数据恢复—华为OceanStor存储数据恢复案例
服务器数据恢复环境: 华为OceanStor某型号存储,存储内有一组由24块硬盘组建的raid5阵列,配置1块热备盘。 服务器故障: 该存储raid5阵列中有一块硬盘离线,热备盘自动激活并开始同步数据,在热备盘同步数据的过程中,raid5阵列中另一块硬盘离线,上层应用崩溃,数据丢失。
服务器数据恢复—华为OceanStor存储数据恢复案例
|
9月前
|
JavaScript UED
Angular 服务器端渲染场景里,服务器端和客户端渲染出的 HTML 源代码有可能不完全一致
Angular 服务器端渲染场景里,服务器端和客户端渲染出的 HTML 源代码有可能不完全一致
华为机试-服务器能耗统计
华为机试-服务器能耗统计
194 0
华为交换使用技术防止非法的DHCP服务器
华为交换使用技术防止非法的DHCP服务器
105 0
|
JavaScript 前端开发 Devops
上手华为软开云DevOps前后端分离实践之-静态资源服务器(Node.js)
上手华为软开云DevOps前后端分离实践之-静态资源服务器(Node.js)
151 0
|
虚拟化 数据安全/隐私保护
【EulerOS】华为欧拉服务器操作系统安装与使用教程
【EulerOS】华为欧拉服务器操作系统安装与使用教程
3885 0

热门文章

最新文章