V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
benmaowang
V2EX  ›  硬件

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

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

    你以后自己开发的程序如果编译超过30秒的话,算你狠了。
    zhaoxiting1997
        2
    zhaoxiting1997  
       2015-04-12 08:53:42 +08:00 via Android
    你用 -j 线程数 选择多线程编译了吗,我记得原来在i5的笔记本上编译也就半个小时,硬盘读写速度不太重要。
    zhaoxiting1997
        3
    zhaoxiting1997  
       2015-04-12 08:55:56 +08:00 via Android
    而且第一次下载包的时候可以用国内镜像
    https://mirrors.ustc.edu.cn/openwrt/
    jokester
        4
    jokester  
       2015-04-12 09:03:13 +08:00
    看看能不能扔ramfs
    然後整套編譯時間其實影響不大..以後就只編譯改過的部分了
    squid157
        5
    squid157  
       2015-04-12 09:29:54 +08:00
    @bugeye make -j5 download
    Andiry
        6
    Andiry  
       2015-04-12 09:35:12 +08:00
    i7 + SSD, 多线程编译Linux kernel大概五分钟
    yanest
        7
    yanest  
       2015-04-12 09:44:41 +08:00 via iPhone
    @zhaoxiting1997 修改哪里可以让下载的时候从国内镜像下载
    zhaoxiting1997
        8
    zhaoxiting1997  
       2015-04-12 09:59:59 +08:00 via Android
    @yanest scripts/download.pl
    不过我前面说的那个源好像好久没更新了,不一定能用
    facat
        9
    facat  
       2015-04-12 10:41:41 +08:00
    @Andiry 只编译个内核的确很快
    zcbenz
        10
    zcbenz  
       2015-04-12 11:05:28 +08:00
    i7也有好坏,上i7 5960x,编译个openwrt不会超过一分钟。
    scys
        11
    scys  
       2015-04-12 11:56:43 +08:00
    上志强Xeon 32核心。感觉差不多。
    ryd994
        12
    ryd994  
       2015-04-12 20:50:55 +08:00 via Android
    不是每次改配置就要全部重新编译的啊……
    clean的时候不要全clean
    make xxx/clean 这样只清改了配置的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1884 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:32 · PVG 00:32 · LAX 08:32 · JFK 11:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.