JustinTulloss/zeromq.node

fatal error: zmq.h: No such file or directory

Opened this issue · 4 comments

Hi, when I try to install npm zmq@2.15.3 I am getting following error:

msgpack@1.0.2 install /bundle/bundle/programs/server/npm/node_modules/msgpack
node-gyp rebuild

make: Entering directory '/bundle/bundle/programs/server/npm/node_modules/msgpack/build'
CC(target) Release/obj.target/libmsgpack/deps/msgpack/objectc.o
CC(target) Release/obj.target/libmsgpack/deps/msgpack/unpack.o
CC(target) Release/obj.target/libmsgpack/deps/msgpack/vrefbuffer.o
CC(target) Release/obj.target/libmsgpack/deps/msgpack/zone.o
CC(target) Release/obj.target/libmsgpack/deps/msgpack/version.o
AR(target) Release/obj.target/deps/msgpack/msgpack.a
COPY Release/msgpack.a
CXX(target) Release/obj.target/msgpackBinding/src/msgpack.o
SOLINK_MODULE(target) Release/obj.target/msgpackBinding.node
COPY Release/msgpackBinding.node
make: Leaving directory '/bundle/bundle/programs/server/npm/node_modules/msgpack/build'

zmq@2.15.3 install /bundle/bundle/programs/server/npm/node_modules/zmq
node-gyp rebuild

make: Entering directory '/bundle/bundle/programs/server/npm/node_modules/zmq/build'
CXX(target) Release/obj.target/zmq/binding.o
../binding.cc:28:17: fatal error: zmq.h: No such file or directory
#include <zmq.h>
^
compilation terminated.
make: *** [Release/obj.target/zmq/binding.o] Error 1
zmq.target.mk:96: recipe for target 'Release/obj.target/zmq/binding.o' failed
make: Leaving directory '/bundle/bundle/programs/server/npm/node_modules/zmq/build'
gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:87:13)
gyp ERR! stack at ChildProcess.emit (events.js:172:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:12)
gyp ERR! System Linux 4.4.0-1031-aws
gyp ERR! command "/opt/nodejs/bin/node" "/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /bundle/bundle/programs/server/npm/node_modules/zmq
gyp ERR! node -v v4.8.3
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok

npm ERR! Linux 4.4.0-1031-aws
npm ERR! argv "/opt/nodejs/bin/node" "/opt/nodejs/bin/npm" "rebuild" "--update-binary"
npm ERR! node v4.8.3
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! zmq@2.15.3 install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the zmq@2.15.3 install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the zmq package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs zmq
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls zmq
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! /bundle/bundle/programs/server/npm/npm-debug.log

npm WARN meteor-dev-bundle@0.0.0 No description
npm WARN meteor-dev-bundle@0.0.0 No repository field.
npm WARN meteor-dev-bundle@0.0.0 No license field.
npm ERR! Linux 4.4.0-1031-aws
npm ERR! argv "/opt/nodejs/bin/node" "/usr/bin/npm" "install" "--unsafe-perm"
npm ERR! node v4.8.3
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! meteor-dev-bundle@0.0.0 install: node npm-rebuild.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the meteor-dev-bundle@0.0.0 install script 'node npm-rebuild.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the meteor-dev-bundle package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node npm-rebuild.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs meteor-dev-bundle
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls meteor-dev-bundle
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! /bundle/bundle/programs/server/npm-debug.log

From my own experience, this module requires Visual Studio Community build tools, specifically the C++ stuff to build in place your library. I think I did fine with the 2017 Community, and you probably will as well.

However, I recently swapped out my use of zmq, and changed over to zeromq https://www.npmjs.com/package/zeromq which contains pre-built libraries. The reasons are:

  1. This package has been receiving regular updates,
  2. This package was cloned from zmq, and the authors had a long discussion just a few weeks ago, that all is well, and that zeromq should be considered the official npm module when using 0MQ.

For my project, it as a seamless switch, as you might expect, so, unless you are married to using zmq, I would switch to zeromq.

Cheers.

lucaq commented

i had a same problem with centos7
yum install -y zeromq-devel
it worked

nzy commented

apt-get install libzmq3-dev
on debian or ubuntu

apt-get install libzmq3-dev
on debian or ubuntu

thank,maybe i uninstall it before yesterday