免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: ioerr
打印 上一主题 下一主题

[技术动态] GCC从C转到C++(转贴) [复制链接]

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
1 [报告]
发表于 2012-08-19 09:22 |显示全部楼层
回复 10# 〇〇


    不是那个意思. LZ的意思是说, 现在gcc本身(除自举之外的东西)是用C语言写的, 现在改成用C++语言来实现.

    一般, g++和gcc没太多区别, g++默认会链接C++标准库而gcc不会. 它们都是编译工具链驱动器. gcc改成C++实现后估计还是会保持这个差别的.

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
2 [报告]
发表于 2012-08-19 09:53 |显示全部楼层

没, 其实叔叔我真的有点意见(额, 谁能解答下吗?)
...用C++重构一次?
=============================================

没看过源码也很少自己动手编译工具链(交叉编译链编过, 不过从没研究过具体过程), 所以有些细节也想知道, 有没知道的解答下~

=============================================
1. 用C++重构了是吧? 得有个能用的C++编译器先啊. 从汇编器到能用的C++编译器, 自举都有, 没问题?
2. 用了模板什么的, 估计C++这啊那啊的高级特性也没少用吧. 那个"能用的C++编译器"都支持木问题?
3. C++11加入了不少特性吧?... 以后特性敢更多点不, 天知道. 自举的编译器打算支持到什么程度? 都支持?...@#~!$%@...那你还用C++重构个P啊.

=============================================
我记得哪怕就是C语言编译器的自举, 也不是一般的麻烦吧. 先要有个名字叫C90?的编译器(据说是符合C89的), 那玩意是不是纯汇编写的记不清了(意思就是C90之前还有stage, 用来编译出C90).然后用那个编译器编译C语言代码,搞定gcc的C编译器(带这扩展那扩展俗称gcc扩展的cc1编译器). C++?...感觉真是自己往坑里跳. FSF那帮子人绝对是吃饱了没事干. 重构也不应该用C++重构, 用C嘛. 你说你用C++写了一大陀一大陀的代码是吧, 还不是先要有个用C写的C++编译器才能搞定(当然实际情况复杂多了, 估计什么这stage 那stage的少不了, 毕竟这是C++编译器啊)?......
=============================================

最后叔叔想说... 真心不会C++, 神啊, 救救我吧.

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
3 [报告]
发表于 2012-08-19 09:56 |显示全部楼层
回复 6# koolcoy


    有啊. 回答下我15L的问题嘛~

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
4 [报告]
发表于 2012-08-19 10:00 |显示全部楼层
回复 6# koolcoy

呃... 回答似乎用词不妥, 解答才对
   

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
5 [报告]
发表于 2012-08-19 10:04 |显示全部楼层
回复 13# qian19876025


    这位兄弟我觉得你说得对

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
6 [报告]
发表于 2012-08-19 10:31 |显示全部楼层
回复 20# __BlueGuy__


    擦...
    你把20楼占了, 要翻页才能看到我的问题了。要是没人给个解答怎么办?你赔我。你那解答不算。

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
7 [报告]
发表于 2012-08-19 20:26 |显示全部楼层
回复 23# MMMIX


    现在的gcc支持C++啊. cc1plus嘛. 但是自举的问题仍然要解决啊. 假设我系统上根本就没有编译器, 那编译整个工具链, 这个编译工具链要能自举编译才对.

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
8 [报告]
发表于 2012-08-19 20:33 |显示全部楼层
回复 24# MMMIX


    ... 这?

    我原来是程序员. 不想再在开发的路上混了.

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
9 [报告]
发表于 2012-08-19 23:46 |显示全部楼层
回复 29# wlmouse


    嗯, 嗯, 这个可以视为正解么

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
10 [报告]
发表于 2012-08-19 23:59 |显示全部楼层
回复 28# MMMIX


    嗯. 我明白你的意思. 我既然在说这个事情, 我也知道自举之后原来的编译器就没用了.
    我的意思是, 既然写了一个用来自举编译C++代码的C++编译器, 那么用C++重构实际上是在构造一个"更好更强大"的C++编译器, 优化它的各种中间阶段(语法分析, 中间代码平台之类的).

    我觉得LS的同学回答是正解. 这种重构估计是针对LLVM的. gcc的王者地位需要继续保持. LLVM还有不完善的地方, gcc支持的平台和各种交叉编译工具链实在太多了. 就拿ARM说事,至今没见过哪个公司用LLVM的.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP