【问题标题】:Trying to install Node.js 12 on a Raspberry Pi, somehow ending up with version 10 instead尝试在 Raspberry Pi 上安装 Node.js 12,不知何故以版本 10 结束
【发布时间】:2021-03-05 15:00:28
【问题描述】:

我正在尝试创建一个 bash 安装脚本以在 Raspberry Pi 上安装 Node.js 版本 12:

curl -sL https://deb.nodesource.com/setup_12.x | sudo bash -
sudo apt-get install -y nodejs

不过,安装完成后,我用node --version检查版本,我得到的是v10.24.0。

什么会导致这种情况,我该如何阻止它发生?

我还发现 npm 没有安装,除非我这样做:

sudo apt-get install -y nodejs npm

...并明确安装npm。这种方法有效,但是每次我使用 npm 时都会收到警告,指出 npm 并不是真的要与 Node 10 一起使用。

我是否可能缺少版本 12 的一些先决条件,并被自动降级到版本 10?

我试图让它与只有 1GB RAM 的 Raspberry Pi 3B+ 一起工作。这可能是问题吗?如果我检测到小于 2GB 的 RAM,我的意图是故意在此安装脚本中安装 12 而不是 14,因为我认为 14 可能需要超过 1GB 才能可靠运行。也许 1GB 对于 12 来说也太小了?

如果我再次尝试安装,我会得到:

pi@raspberry:~ $ sudo apt-get install -y nodejs
Reading package lists... Done
Building dependency tree       
Reading state information... Done
nodejs is already the newest version (10.24.0~dfsg-1~deb10u1).
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

注意:在我的大部分测试中,我使用的不是真正的 Raspberry Pi,而是带有 Debian Linux 10.8 和 Raspberry Pi 桌面的 VM。但是,实际硬件上的问题是相同的。 VM 只是让测试变得更快。

【问题讨论】:

  • 您是否有可能拥有 2 个版本的 Node.js?你为什么sudo apt-get install -y nodejs
  • 我必须仔细检查以确保这一点,但 sudo apt-get install -y nodejs 没有首先运行 curl-acquired 脚本会失败,因为 nodejs 不是通常可用的包。
  • 您在 Raspberry Pi 上使用什么操作系统?我从来没有运行过这个脚本,而且我总是用apt 安装 Node.js。你在哪里找到这个脚本的?您是否使用 sudo apt update 更新了存储库?
  • 这是第 10 版。
  • “这是第 10 版。” 这是对我的一个问题的回答吗?

标签: node.js linux npm raspberry-pi debian


【解决方案1】:

删除已安装的版本:

sudo apt purge nodejs

下载压缩包from here,解压然后复制到/usr/local/(使用uname -a获取准确的ARMv*版本):

wget https://nodejs.org/dist/v12.9.1/node-v12.9.1-linux-armv7l.tar.xz
unxz node-v12.9.1-linux-armv7l.tar.xz
tar xvf node-v12.9.1-linux-armv7l.tar
cd node-v12.9.1-linux-armv7l/
sudo cp -R * /usr/local/

【讨论】:

  • 奇怪的结果:which node 给了我/usr/local/bin/node,二进制文件肯定在那里,但是node --version 给了我-bash: /usr/local/bin/node: No such file or directory。我开始认为,一旦 Raspbian 获得了自己的特殊节点版本,即版本 10,其他节点发行版就不再工作了。
  • @kshetline 和 node -v?
猜你喜欢
  • 2017-08-02
  • 2017-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多