pgte / fugue

Unicorn for node.js
MIT License
396 stars 14 forks source link

fugue fails to install with node 0.6.4 #13

Closed Sembiance closed 12 years ago

Sembiance commented 12 years ago

sembiance@bigrapids /tmp $ npm install fugue npm WARN fugue@0.1.2 package.json: bugs['web'] should probably be bugs['url'] npm WARN carrier@0.1.3 package.json: bugs['web'] should probably be bugs['url']

fugue@0.1.2 install /tmp/node_modules/fugue node-waf configure build

Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok
Checking for node path : not found Checking for node prefix : ok /usr 'configure' finished successfully (0.024s) Waf: Entering directory /tmp/node_modules/fugue/build' [1/2] cxx: deps/daemon.cc -> build/Release/deps/daemon_1.o ../deps/daemon.cc:13:16: fatal error: ev.h: No such file or directory compilation terminated. Waf: Leaving directory/tmp/node_modules/fugue/build' Build failed: -> task failed (err #1): {task: cxx daemon.cc -> daemon_1.o} npm ERR! error installing fugue@0.1.2 Error: fugue@0.1.2 install: node-waf configure build npm ERR! error installing fugue@0.1.2 sh "-c" "node-waf configure build" failed with 1 npm ERR! error installing fugue@0.1.2 at ChildProcess. (/usr/lib/node_modules/npm/lib/utils/exec.js:49:20) npm ERR! error installing fugue@0.1.2 at ChildProcess.emit (events.js:70:17) npm ERR! error installing fugue@0.1.2 at maybeExit (child_process.js:359:16) npm ERR! error installing fugue@0.1.2 at Process.onexit (child_process.js:395:5) npm ERR! fugue@0.1.2 install: node-waf configure build npm ERR! sh "-c" "node-waf configure build" failed with 1 npm ERR! npm ERR! Failed at the fugue@0.1.2 install script. npm ERR! This is most likely a problem with the fugue package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-waf configure build npm ERR! You can get their info via: npm ERR! npm owner ls fugue npm ERR! There is likely additional logging output above. npm ERR! npm ERR! System Linux 3.0.4 npm ERR! command "node" "/usr/bin/npm" "install" "fugue" npm ERR! cwd /tmp npm ERR! node -v v0.6.4 npm ERR! npm -v 1.1.0-alpha-6 npm ERR! code ELIFECYCLE npm ERR! message fugue@0.1.2 install: node-waf configure build npm ERR! message sh "-c" "node-waf configure build" failed with 1 npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /tmp/npm-debug.log npm not ok

pgte commented 12 years ago

Yeah, fugue does not support node >= 0.6.0. I'll update package.json appropriately.

Sembiance commented 12 years ago

Looks like ev.h is no more.

Now just include 'node.h' and you get everything ev.h had in it.

Changing daemon.css to include node.h instead of ev.h fixed the configure build for me.

Another module that had the same problem: https://github.com/JustinTulloss/zeromq.node/pull/62

Sembiance commented 12 years ago

pgte:

Aside from this error, is there another reason why fugue shouldn't be used with node 0.6.x ?

Basically, should I be looking into finding a different daemonizer for my node 0.6.x based project or is it just a matter of fixing this one bug?

Sembiance commented 12 years ago

Note that node.h from node 0.4.12 already includes ev.h

So just changing #include in daemonize.cc to #include should be backwards compatible and allow fugue to compile and install with node 0.6.x

pgte commented 12 years ago

I honestly don't have time to support this module anymore. I accept a pull request, though, and I'll run the tests under node 0.6 before publishing it :)

Otherwise, these days I tend to use cluster https://github.com/LearnBoost/cluster :)

Sembiance commented 12 years ago

Added a pull request which changes the include and reverts the package.json node.js requirement back.

Thank you VERY much for making fugue and thank you for pointing me to cluster :)

pgte commented 12 years ago

The tests fail with this:

pedroteixeira:fugue pedroteixeira$ make test node-waf configure build Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok
Checking for node path : ok /usr/local/lib/node Checking for node prefix : ok /usr/local 'configure' finished successfully (0.441s) Waf: Entering directory /Users/pedroteixeira/projects/fugue/build' [1/2] cxx: deps/daemon.cc -> build/Release/deps/daemon_1.o [2/2] cxx_link: build/Release/deps/daemon_1.o -> build/Release/daemon.node Waf: Leaving directory/Users/pedroteixeira/projects/fugue/build' 'build' finished successfully (0.582s) node tools/test.js test_zero_workers test_one_worker test_if_i_can_reach_many_workers test_app_reload test_working_dir test_leaks test_worker_dies_after_master_sudden_death test_unix_socket test_pipe_leaks running test test_zero_workers... AssertionErrorErrorNo such moduleError: No such module at Object.start (/Users/pedroteixeira/projects/fugue/lib/fugue.js:190:28)