GCC 编译用什么样的硬件配置会快一点?

2015-04-12 08:42:41 +08:00
 benmaowang
想自学下嵌入式Linux,发现编译实在太费时间。比如openwrt,整个编译下来要两个多小时,都可以去睡一觉了。。。
用公司的高配置机器试了试,I7+SSD编个openwrt也要近一小时。
那编译速度跟什么有关呢?我的理解是CPU主频,还有硬盘读写速度,因为有很多小文件要读写。是不是我要换个高主频的CPU?或者多块SSD做RAID?
大家有没有推荐的配置?要是代价太大我就不折腾了,忍忍算了。
4146 次点击
所在节点    硬件
12 条回复
bugeye
2015-04-12 08:52:36 +08:00
也就是第一次编译慢啊。
两大时间杀手
1. 下载。openwrt 包在国内访问慢。第一次要下载所有的包,当然慢。而且开发者也没功夫实现一次性下载所有包,或者一边编译后台下载。
2. 工具链打造。事实上openwrt工具链编译算快的了。快到我都觉得可能没有按正规的方式编译工具链。

你以后自己开发的程序如果编译超过30秒的话,算你狠了。
zhaoxiting1997
2015-04-12 08:53:42 +08:00
你用 -j 线程数 选择多线程编译了吗,我记得原来在i5的笔记本上编译也就半个小时,硬盘读写速度不太重要。
zhaoxiting1997
2015-04-12 08:55:56 +08:00
而且第一次下载包的时候可以用国内镜像
https://mirrors.ustc.edu.cn/openwrt/
jokester
2015-04-12 09:03:13 +08:00
看看能不能扔ramfs
然後整套編譯時間其實影響不大..以後就只編譯改過的部分了
squid157
2015-04-12 09:29:54 +08:00
@bugeye make -j5 download
Andiry
2015-04-12 09:35:12 +08:00
i7 + SSD, 多线程编译Linux kernel大概五分钟
yanest
2015-04-12 09:44:41 +08:00
@zhaoxiting1997 修改哪里可以让下载的时候从国内镜像下载
zhaoxiting1997
2015-04-12 09:59:59 +08:00
@yanest scripts/download.pl
不过我前面说的那个源好像好久没更新了,不一定能用
facat
2015-04-12 10:41:41 +08:00
@Andiry 只编译个内核的确很快
zcbenz
2015-04-12 11:05:28 +08:00
i7也有好坏,上i7 5960x,编译个openwrt不会超过一分钟。
scys
2015-04-12 11:56:43 +08:00
上志强Xeon 32核心。感觉差不多。
ryd994
2015-04-12 20:50:55 +08:00
不是每次改配置就要全部重新编译的啊……
clean的时候不要全clean
make xxx/clean 这样只清改了配置的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/183170

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX