首页 > 解决方案 > npm v8 挂在 armv7 中(树莓派)

问题描述

我在 armv7 raspberry pi 上安装了 node v16.13 和 npm v8.1.0(从 nodejs.org/en/download 下载二进制文件,从/usr/local/bin/*->符号链接/home/pi/Sources/node/bin/...

我可以跑得npm --help很好npm --version

pi@raspberrypi:~ $ node -v
v16.13.0
pi@raspberrypi:~ $ npm -v
8.1.0

但我不能跑npm install,它只是挂起。

输出-verbose

pi@raspberrypi:~/test2 $ npm i lodash -verbose
npm verb cli [
npm verb cli   '/home/pi/Sources/node-v16.13.0-linux-armv7l/bin/node',
npm verb cli   '/usr/local/bin/npm',
npm verb cli   'i',
npm verb cli   'lodash',
npm verb cli   '-verbose'
npm verb cli ]
npm info using npm@8.1.0
npm info using node@v16.13.0
npm timing npm:load:whichnode Completed in 1ms
npm timing config:load:defaults Completed in 11ms
npm timing config:load:file:/home/pi/Sources/node-v16.13.0-linux-armv7l/lib/node_modules/npm/npmrc Completed in 4ms
npm timing config:load:builtin Completed in 5ms
npm timing config:load:cli Completed in 15ms
npm timing config:load:env Completed in 2ms
npm timing config:load:file:/home/pi/test2/.npmrc Completed in 1ms
npm timing config:load:project Completed in 20ms
npm timing config:load:file:/home/pi/.npmrc Completed in 7ms
npm timing config:load:user Completed in 8ms
npm timing config:load:file:/home/pi/Sources/node-v16.13.0-linux-armv7l/etc/npmrc Completed in 1ms
npm timing config:load:global Completed in 1ms
npm timing config:load:validate Completed in 7ms
npm timing config:load:credentials Completed in 6ms
npm timing config:load:setEnvs Completed in 6ms
npm timing config:load Completed in 83ms
npm timing npm:load:configload Completed in 84ms
npm timing npm:load:setTitle Completed in 0ms
npm timing npm:load:setupLog Completed in 2ms
npm timing config:load:flatten Completed in 20ms
npm timing npm:load:cleanupLog Completed in 13ms
npm timing npm:load:configScope Completed in 0ms
npm timing npm:load:projectScope Completed in 2ms
npm timing npm:load Completed in 198ms

然后它永远挂起。中的进程状态psD(不间断睡眠)。它不响应任何信号,包括 SIGKILL。

我也运行它strace

read(20, "cpu  2190 0 3893 157813 22294 0 "..., 1024) = 527
openat(AT_FDCWD, "/proc/cpuinfo", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 21
fcntl64(21, F_GETFL)                    = 0x20000 (flags O_RDONLY|O_LARGEFILE)
fstat64(21, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
read(21, "processor\t: 0\nmodel name\t: ARMv7"..., 1024) = 1024
read(21, "PU variant\t: 0x0\nCPU part\t: 0xd0"..., 1024) = 156
read(21, "", 1024)                      = 0
close(21)                               = 0
_llseek(20, 0, [0], SEEK_SET)           = 0
read(20, "cpu  2190 0 3893 157814 22294 0 "..., 1024) = 527
openat(AT_FDCWD, "/sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 21
fcntl64(21, F_GETFL)                    = 0x20000 (flags O_RDONLY|O_LARGEFILE)
fstat64(21, {st_mode=S_IFREG|0444, st_size=4096, ...}) = 0
read(21,

此要点中提供了更完整的日志

任何想法为什么会这样?

标签: npmraspberry-piarm

解决方案


推荐阅读