之前安装过windows下以及Mac下的node,感觉还是很方便的,不成想今天安装linux下的坑了老半天,特此记录。

首先去官网下载代码,这里一定要注意安装分两种,一种是Source Code源码,一种是编译后的文件。我就是按照网上源码的安装方式去操作编译后的文件,结果坑了好久好久。

(一) 编译好的文件

  像上图中红色框里面的就是已经编译好的文件,选择好对应的linux版本下载即可,简单说就是解压后,在bin文件夹中已经存在node以及npm,如果你进入到对应文件的中执行命令行一点问题都没有,不过不是全局的,所以通过建立软链接的方式将这个设置为全局就好了。

tar  xf node-v5.10.1-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
mv node-v5.10.1-linux-x64/ nodejs
ln -s /usr/local/nodejs/bin/node /usr/local/bin
ln -s /usr/local/nodejs/bin/npm /usr/local/bin

(二)通过源码编译

这种方式你下载的文件是Source code,由于我的linux版本是6.x的,默认的gcc-c++为4.4.7 版本,而下过来之后源码编译要求gcc-c++版本最低为4.8,于是我就去升级GCC-C++版本,结果因为是源码编译升级GCC-C++,编译了一个多小时,都没有编译完成!果断被坑...

root># ./configure
WARNING: C++ compiler too old, need g++ 4.8 or clang++ 3.4 (CXX=g++)
creating ./icu_config.gypi
{ 'target_defaults': { 'cflags': [],
'default_configuration': 'Release',
'defines': [],
'include_dirs': [],
'libraries': []},
'variables': { 'asan': 0,
'gas_version': '2.20',
'host_arch': 'x64',
'icu_small': 'false',
'node_byteorder': 'little',
'node_install_npm': 'true',
'node_prefix': '/usr/local',
'node_release_urlbase': '',
'node_shared_http_parser': 'false',
'node_shared_libuv': 'false',
'node_shared_openssl': 'false',
'node_shared_zlib': 'false',
'node_tag': '',
'node_use_dtrace': 'false',
'node_use_etw': 'false',
'node_use_lttng': 'false',
'node_use_openssl': 'true',
'node_use_perfctr': 'false',
'openssl_fips': '',
'openssl_no_asm': 0,
'target_arch': 'x64',
'uv_parent_path': '/deps/uv/',
'uv_use_dtrace': 'false',
'v8_enable_gdbjit': 0,
'v8_enable_i18n_support': 0,
'v8_no_strict_aliasing': 1,
'v8_optimized_debug': 0,
'v8_random_seed': 0,
'v8_use_snapshot': 'true',
'want_separate_host_toolset': 0}}
creating ./config.gypi
creating ./config.mk
WARNING: warnings were emitted in the configure phase

(三)apt-get

还有一种就是乌班图下的apt-get方式,我之前就被这种方式坑了

  sudo apt-get install nodejs
  sudo apt-get install npm

这么装完你会发现,node命令不好使,nodejs命令可以用...

最新文章

  1. 进击的Python【第二十一章】
  2. C++基础知识面试精选100题系列(11-20题)[C++ basics]
  3. Centos下yum安装PHP
  4. 我总结的git命令指南。
  5. poj2115-C Looooops(扩展欧几里德算法)
  6. MySQL server has gone away 问题的解决方法
  7. 【二叉树遍历模版】前序遍历&&中序遍历&&后序遍历&&层次遍历&&Root->Right->Left遍历
  8. 微软自带iscsi客户端对iqn的要求
  9. java制作简单的坦克大战
  10. 动易CMS - 设为首页代码和加入收藏代码(兼容各种浏览器)
  11. yii2布局选择与属性标签设置
  12. SAR指标(转)
  13. 流程控制之for
  14. android SQLiteOpenHelper 使用
  15. 当try-catch-finally代码块遇上return,代码执行流程是怎样
  16. virgo-tomcat-server最大并发连接数的修改
  17. Daily Scrum 11.18
  18. python difflib详解
  19. php 给图片增加背景平铺水印代码
  20. Android学习笔记_63_手机安全卫士知识点归纳(3)分享 程序锁 服务 进程管理 widget

热门文章

  1. 前端开发中SEO的十二条总结
  2. nodejs之get/post请求的几种方式
  3. MVC5+EF6+MYSQl,使用codeFirst的数据迁移
  4. 卡片抽奖插件 CardShow
  5. 玩转spring boot——MVC应用
  6. Canvas讲解
  7. Android 添加ActionBar Buttons
  8. 海鑫智圣:物联网漫谈之MQTT协议
  9. angularjs 1 开发简单案例(包含common.js,service.js,controller.js,page)
  10. JavaWeb的国际化