agnat / node_mdns

mdns/zeroconf/bonjour service discovery add-on for node.js
http://agnat.github.com/node_mdns
MIT License
870 stars 146 forks source link

Installation on node v0.10 is broken -- Migrate to node-gyp #65

Closed cobracmder closed 10 years ago

cobracmder commented 11 years ago

Build system is still node-waf based which was deprecated in 0.8 and is not present in 0.10 which results in an ENOENT when trying to build with node-waf.

agnat commented 11 years ago

Take a closer look. The package contains both, a gyp build and a waf build.The package.json doesn't mention any build system. It relies on npm to do the right thing. It builds fine on node 0.4 to 0.9. If it doesn't build on 0.10 it is probably not because of the build system.

agnat commented 11 years ago

It builds fine for me on v0.10.0. But it doesn't work because of upstream changes. I'll take a look as soon as I can, which is probably not before april...

cobracmder commented 11 years ago

I totally blanked on the gyp file. Thanks.

However, if you npm install mdns it'll build fine, but if you do a npm rebuild mdns you get this:

100 verbose rebuild path, id [ '/Users/los/node_modules/mdns', 'mdns@1.1.0' ]
101 silly rebuild set [ '/Users/los/node_modules/mdns' ]
102 silly exec node-waf "clean"
103 silly node-waf,clean,/Users/los/node_modules/mdns spawning
104 error Error: spawn ENOENT
104 error     at errnoException (child_process.js:945:11)
104 error     at Process.ChildProcess._handle.onexit (child_process.js:736:34)
105 error If you need help, you may report this log at:
105 error     <http://github.com/isaacs/npm/issues>
105 error or email it to:
105 error     <npm-@googlegroups.com>
106 error System Darwin 12.3.0
107 error command "node" "/usr/local/bin/npm" "rebuild" "mdns"
108 error cwd /Users/los
109 error node -v v0.10.0
110 error npm -v 1.2.14
111 error syscall spawn
112 error code ENOENT
113 error errno ENOENT
114 verbose exit [ 1, true ]

No problem (re: upstream changes).

agnat commented 11 years ago

Heh. Looks like an npm bug. I'll file an issue...

wimhaanstra commented 11 years ago

Having nodejs 0.10.0 problems here too. Building mdns is fine, but when running the application. The following error causes a crash:

node: symbol lookup error: /root/xnodes/node_modules/mdns/build/Release/dns_sd_bindings.node: undefined symbol: _ZN4node12MakeCallbackEN2v86HandleINS0_6ObjectEEENS1_INS0_8FunctionEEEiPNS1_INS0_5ValueEEE

This is on a clean install of Arch Linux, running on my Raspberry Pi.

agnat commented 11 years ago

Yep, that's an upstream bug. It's already fixed but not released yet. See

However, even after working around that there are other issues. Unfortunately, I will not be able to address those before april. However, the tests that fail are rather exotic, So, your application might still work, depending on the platform and your use cases.

wimhaanstra commented 11 years ago

Thanks!

I removed mdns from the project completely at the moment, just to get it running again on nodejs 0.10.0, but it feels like it's covered with upgrade bugs at the moment.

agnat commented 11 years ago

Just for reference, here is the upstream ticket regarding npm rebuild <package>:

cobracmder commented 11 years ago

Awesome. Thanks.