繁体   English   中英

在ubuntu 16.04上安装aerospike-node客户端时出错

[英]Error while installing aerospike-node client on ubuntu 16.04

我正在尝试在Ubuntu上使用npm安装aerospike-node客户端。

npm install aerospike

安装时我得到的错误就像

SOLINK_MODULE(target) Release/obj.target/aerospike.node
/usr/bin/ld: cannot find -lz
collect2: error: ld returned 1 exit status
aerospike.target.mk:186: recipe for target 'Release/obj.target/aerospike.node' failed
make: *** [Release/obj.target/aerospike.node] Error 1
rm binding_gyp_aerospike_client_c_target_run_scripts_aerospike_client_c_sh.intermediate
make: Leaving directory '/home/sys1095/NodeProjects/aerospike-test/node_modules/aerospike/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 4.4.0-21-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/sys1095/NodeProjects/aerospike-test/node_modules/aerospike
gyp ERR! node -v v6.10.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok 
npm WARN aerospike-test@1.0.0 No repository field.
npm ERR! Linux 4.4.0-21-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "aerospike"
npm ERR! node v6.10.0
npm ERR! npm  v3.10.10
npm ERR! code ELIFECYCLE

Environment :: node -v 6.10.0,node-gyp -v 3.4.0,npm -v 3.10.10。

我确实在aerospike github问题上检查了这个,但我没有得到任何东西(具体)。 我认为主要问题从这里开始

/usr/bin/ld: cannot find -lz

我没有得到它是什么。 是关于节点的版本或关于os(ubuntu)与gcc编译器版本相关的任何问题。

帮助我。

我将在这里发布我所做的工作,以便从我的草稿笔记中获取node.js在Ubuntu 16.04上为我的应用程序工作。 希望你能按照我的步骤,包括我的失误!!!,找出你错过的地方。

====所以这里它= ==

安装node.js在Ubuntu 16.04.1 LTS上安装并测试node.js客户端

https://nodejs.org/en/为大多数用户下载并安装最新的推荐版本。 节点-v6.9.1-Linux的x64.tar.xz

(将文件保存到下载目录)

$ cd ~/Downloads/
$ tar xvf node-v6.9.1-linux-x64.tar.xz

⇒包含所有node.js组件的node-v6.9.1-linux-x64目录。

$ sudo mv node-v6.9.1-linux-x64 /usr/local/nodejs

安装库预先获取

sudo apt-get install libssl0.9.8 libssl-dev liblua5.1-dev

(找不到libssl0.9.8 - ubuntu 16.04使用libssl1.0.0)

让我们一次做一个:

$sudo apt-get install liblua5.1-dev (< - 只需要这样做)读取包列表...完成构建依赖关系树
读取状态信息...完成注意,选择“liblua5.1-0-dev”而不是“liblua5.1-dev”将安装以下附加软件包:autotools-dev libltdl-dev libtool libtool-bin建议软件包:libtool -doc autoconf automaken gfortran | fortran95-compiler gcj-jdk将安装以下新软件包:autotools-dev libltdl-dev liblua5.1-0-dev libtool libtool-bin 0升级,5个新安装,0个删除,165个未升级。 需要获得594 kB的档案。 在此操作之后,将使用3,180 kB的额外磁盘空间。

$sudo apt-get install libssl-dev (见下文,已安装)阅读包列表...完成构建依赖关系树
读取状态信息...完成libssl-dev已经是最新版本(1.0.2g-1ubuntu4.5)。 0升级,0新安装,0删除,165未升级。

$ sudo apt-get install libssl1.0.0 (见下文,已安装)阅读包列表...完成构建依赖关系树
读取状态信息...完成libssl1.0.0已经是最新版本(1.0.2g-1ubuntu4.5)。 0升级,0新安装,0删除,165未升级。

添加符号链接:

$ sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.1.so /usr/lib/liblua.so
$ sudo ln -s /usr/lib/x86_64-linux-gnu/liblua5.1.a /usr/lib/liblua.a
$ ls /usr/lib/liblua*

lrwxrwxrwx 1 root root 37 Nov 2 13:17 /usr/lib/liblua.a - > /usr/lib/x86_64-linux-gnu/liblua5.1.a lrwxrwxrwx 1 root root 38 Nov 2 13:17 / usr / lib /liblua.so - > /usr/lib/x86_64-linux-gnu/liblua5.1.so

安装npm

(如果你没有npm,你就无法安装aerospike node.js客户端。)

$ npm install aerospike

目前尚未安装“npm”程序。 您可以通过键入以下命令安装它:sudo apt install npm

$ sudo apt install npm

运行应用程序

($ cd your_location / your_application / Node) 修改package.json

是:

{
  "name": "xxx-app",
  "version": "0.0.1",
  "dependencies": {
    "aerospike": "^1.0.36",
    "inquirer": "^0.8.0"   <--- my app specific
  }
}

更改: "aerospike": "^2.0.0"

然后, $npm install inquirer --save-dev (inquirer是我的app的命令行i / o库。)

$npm install aerospike --save-dev

它应该将package.json更新为以下内容:

$ more package.json
{
  "name": "xxx-app",
  "version": "0.0.1",
  "dependencies": {
    "aerospike": "^2.0.0",
    "inquirer": "^0.8.0"
  },
  "devDependencies": {
    "aerospike": "^2.4.1",
    "inquirer": "^0.8.5"
  }
}

运行节点 - (我的)app.js在相应的子目录中:

$which nodejs
/usr/bin/nodejs
$nodejs app.js

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM