gpt4 book ai didi

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

转载 作者:搜寻专家 更新时间:2023-10-31 23:46:03 25 4
gpt4 key购买 nike

我正在尝试在 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

环境::node -v 6.10.0,node-gyp -v 3.4.0,npm -v 3.10.10。

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

/usr/bin/ld: cannot find -lz

我不明白这是什么。 Node 版本或与 os(ubuntu) 相关的 gcc 编译器版本有关的任何问题。

帮我解决这个问题。

最佳答案

我将从我的草稿笔记中发布我为我的应用程序在 Ubuntu 16.04 上运行 node.js 所做的工作。希望您能遵循我的步骤,包括我的失误!!!,找出您遗漏的地方。

==== 就这样了====

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

https://nodejs.org/en/为大多数用户下载并安装最新的推荐版本。node-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(<-- 只需要这样做)阅读包裹 list ...完成构建依赖树
正在读取状态信息...完成注意,选择“liblua5.1-0-dev”而不是“liblua5.1-dev”将安装以下附加软件包: autotools-dev libltdl-dev libtool libtool-bin推荐套餐: libtool-doc autoconf automaken gfortran | fortran95-编译器gcj-jdk将安装以下新软件包: autotools-dev libltdl-dev liblua5.1-0-dev libtool libtool-bin0 个已升级,5 个新安装,0 个要删除,165 个未升级。需要获得 594 kB 的文件。此操作后,将使用 3,180 kB 的额外磁盘空间。

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

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

添加符号链接(symbolic link):

$ 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.alrwxrwxrwx 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 安装 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 install inquirer --save-dev(inquirer 是我的应用程序的命令行 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"
}
}

运行 Node ——(我的)app.js在相应的子目录中:

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

关于node.js - 在 ubuntu 16.04 上安装 aerospike-node 客户端时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42554516/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com