我是使用nodejs的新手。我使用以下命令安装了Node.js
sudo apt-get install -y nodejs
正常情况下,安装Node.js时会自动安装npm。但是在检查npm
版本时,我得到的结果是
我怎么才能修复它?
发布于 2017-07-04 16:46:14
由于似乎正在outdated
上的指令,
sudo apt-get remove --purge nodejs -y
来删除旧的NodeJS来自Linux存储库的NodeJS大多已经过时了。最新版本是v8.x
发布于 2017-07-04 16:46:15
似乎(对某些人来说) Nodejs的最新Ubuntu软件版本中有一个bug,它导致了您所拥有的分段错误
安装它的最好方法是从源代码中获取node并编译它。
#!/bin/sh
# Update System
echo "System Update"
apt-get -y update
echo "Update completed"
# Installing the applications needed to build Nodejs
apt-get -y install libssl-dev git-core pkg-config build-essential curl gcc g++ checkinstall
# Download & Unpack Node.js - v7.3.0
echo "Download Node.js - v7.3.0"
mkdir /tmp/node-install
cd /tmp/node-install
wget https://nodejs.org/dist/latest/node-v7.3.0.tar.gz
tar -zxf node-v7.3.0.tar.gz
echo "Node.js download & unpack completed"
# Install Node.js
echo "Compiling and installing Node.js"
cd node-v7.3.0
./configure && make && checkinstall --install=yes --pkgname=nodejs --pkgversion "7.3.0" --default
echo "Node.js install completed! Deleting The /tmp files"
rm -rf /tmp/node-install
echo "If you have made it this far in the script with no errors popping up all is well have a good day"
确保并使用sudo chmod a+x /path/ to /file/install_nodejs_latest.sh确保它将启动。然后使用sudo sh /path/ to /file/install_nodejs_latest.sh启动它。(我必须使用sudo运行才能正确触发所有命令)
该脚本删除旧的nodejs、npm和所有节点模块。
它将在脚本末尾更新npm。
建议偶尔执行sudo npm安装-g npm (如果您想要最新版本),因为npm的升级速度比node js快。
脚本完成后,如果版本弹出,运行npm -v和node -v,然后运行sudo npm install -g phonegap,sudo npm install -g cordova,sudo npm install -g less如果你想在将来更新任何模块,你所要做的就是再次安装它,这将覆盖以前的模块。expressjs适用于基于应用程序的应用程序,因此不建议全局安装
我从下面的来源得到了答案:link
发布于 2020-09-02 16:08:29
我在Linux Mint 20上使用npm时也遇到了同样的问题:
$ npm -v
Segmentation fault (core dumped)
我设法解决了这个问题,首先删除了当前的nodejs/npm:
sudo apt-get remove --purge nodejs npm -y
然后遵循适用于Ubuntu和Node.js Current (v14.x)或您喜欢的任何其他版本的official Installation instructions:
curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs
如果有任何相关的软件包未安装,您也可以运行自动删除:
sudo apt autoremove
https://stackoverflow.com/questions/44900948
复制相似问题