
如题,从开始的时候感觉正常到现在怀疑自己是否哪里搞错了,一直编译,cpu 一直占用 100%(单核虚拟机)
具体安装方法就是从官网上下个源码,然后解压,configure ,make && make install.
编译过程中除了 CPU 占用高,内存占用也挺高的,不过 1G+swap 应该还扛得住,问题就是编译咋这么慢。而且编译之前也没要求装啥依赖之类的,像 python 编译起码还要装个 build-essential ,我是不是哪里做错了?
1 trn4 Dec 2, 2021 单核 1G ,emmmm……不是很了解 node 的编译,但是这个配置是不是有点太低了。还有 build 一般还挺吃磁盘 IO 的。 |
2 felixcode PRO 单核肯定慢,不过影响更大的是内存不够用了 swap ,然后磁盘 io 性能还特别低。 |
3 LeeReamond OP @felixcode @xiadong1994 我观察任务管理器了,没有走 swp 卡 io 的情况,而且 ssd 读写速度都是 500MB/S 的,卡了也不会像机械硬盘那样。问题在于它只是个 node ,我这又不是在编译宇宙第一 IDE....安装包大小才几十 MB ,编译跳一下几十 KB 总有吧。。 |
4 trn4 Dec 2, 2021 应该就是单纯的慢,我在工作站上 make 了一下大概 5min 跑完 |
5 thedrwu Dec 2, 2021 via Android 估计 1G 内存连 linker 都跑不起来 |
6 unnamedhao Dec 2, 2021 via iPhone 比慢?试试装 xcode ,单纯的安装 |
7 encro Dec 2, 2021 1G 铁定慢,有什么想不开自己编译 node 呢。 |
8 arischow Dec 2, 2021 via iPhone 1G 连 npm build 公司项目都可能 oom |
9 max1233 Dec 2, 2021 12 个小时太夸张,1c2g 的小鸡都比这个快,编译 node 大概用了 15 分钟。话说为啥要编译呢 nvm 不香吗 |
10 hronro Dec 2, 2021 via iPhone 会不会是连 v8 一起在编译?如果是的话那很正常 |
11 libook Dec 2, 2021 都是单核,也是有主频高低的,另外如果是虚拟机、容器之类的还会有其他开销。 CPU 不够会慢,内存不够会崩,用 Swap 也会慢(即便用最快的 NVMe SSD 也远不及物理内存速度)。 拿 Chromium 的编译来作参考,我找到了去年的一篇文章: https://textslashplain.com/2020/0/02/my-new-chromium-build-pc/ 16 核心 32 线程、64GB 内存、Intel Optane 905P NVMe SSD ,编译 Chromium 花了 53 分钟。 |
12 skinny Dec 2, 2021 当年很多人说 Qt 编译非常慢,随便六七个小时,我当时在我的笔记本下载编译也顶多一个小时,你这个慢得太夸张了 |
13 2i2Re2PLMaDnghL Dec 2, 2021 make 有命令输出的 如果一直有输出,那应该不是大问题,就是慢罢了 如果没有,看下最后一条是啥卡住了,然后去提 Issue 问 |
14 geniux Dec 2, 2021 用二进制,不用编译。 |
15 12101111 Dec 2, 2021 8 核+16G 内存+源码在 tmpfs 里, 用 Clang+ld.lld 开 LTO ,半个多小时 你这个肯定是内存太小,swap 太严重了 |
16 bootvue Dec 2, 2021 make -j 核心 |
17 rm0gang0rf Dec 2, 2021 啥玩意也没这么慢。。1g 的没遇到过 |
18 vanton Dec 2, 2021 内存太小,编译需要大量内存,你这 1G 就是瓶颈。 内存对于编译速度的影响是指数级别的,你内存加大 1 倍速度提升可能有 10 倍。 |
19 shiny PRO 那有点离谱,以前在树莓派上编译都没花这么久 |
20 DonaidTrump Dec 2, 2021 你也没有改源码,为什么要自己编译?直接下载二进制的运行不好么 |
21 ppphp Dec 2, 2021 要么是内存就慢 |
22 JDog Dec 2, 2021 从标题来看,你不熟悉 node ,那么我推断你没有改 node 源码,请问为什么不直接用二进制包,而是自己编译呢? |
23 lianyue Dec 2, 2021 一旦 用上 swap 编译 卡死你 go build 内存够用 10 秒 内存小 半小时我都没出结果 |
24 ruanimal Dec 2, 2021 跑个题,为啥要编译安装 node |
25 seers Dec 2, 2021 via Android 如果内存不够大就会浪费时间一直在 paging |
26 codingBug Dec 2, 2021 via Android 是不是网络问题 |
27 pengtdyd Dec 2, 2021 没有金刚钻不揽瓷器活 |
28 ericgui Dec 3, 2021 请教楼主,为什么要编译 node ?要定制 runtime ? |
29 LeeReamond OP |
30 ericgui Dec 3, 2021 @LeeReamond 那你说你何苦 |
31 hongch Dec 3, 2021 软件的官网不都有教程吗,而且还是最新的,源码,二进制,安装包 各个平台的都有 |
32 leopod1995 Dec 3, 2021 |