One more thing: I've been reading the "API changes between v0.6 and v0.8" and "How to migrate from eio_custom to uv_queue_work" but this isn't there, istm.
So, would you *please* tell me the proper way to write this in the new libuv era? ev_async_send(EV_DEFAULT_UC_ &thread->async_watcher); ev_async_init(&thread->async_watcher, Callback); ev_async_start(EV_DEFAULT_UC_ &thread->async_watcher); It's giving me: [1/2] cxx: src/threads_a_gogo.cc -> build/Release/src/threads_a_gogo_1.o ../src/threads_a_gogo.cc: In function ‘void* aThread(void*)’: ../src/threads_a_gogo.cc:246: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_send(ev_loop*, ev_async*)’ ../src/threads_a_gogo.cc: In function ‘void eventLoop(typeThread*)’: ../src/threads_a_gogo.cc:324: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_send(ev_loop*, ev_async*)’ ../src/threads_a_gogo.cc: In function ‘void destroyaThread(typeThread*)’: ../src/threads_a_gogo.cc:406: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_stop(ev_loop*, ev_async*)’ ../src/threads_a_gogo.cc: In function ‘void Callback(ev_async*, int)’: ../src/threads_a_gogo.cc:471: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_send(ev_loop*, ev_async*)’ ../src/threads_a_gogo.cc: In function ‘v8::Handle<v8::Value> threadEmit(const v8::Arguments&)’: ../src/threads_a_gogo.cc:708: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_send(ev_loop*, ev_async*)’ ../src/threads_a_gogo.cc: In function ‘v8::Handle<v8::Value> Create(const v8::Arguments&)’: ../src/threads_a_gogo.cc:746: error: invalid conversion from ‘void (*)(ev_async*, int)’ to ‘void (*)(ev_loop*, ev_async*, int)’ ../src/threads_a_gogo.cc:747: error: cannot convert ‘ev_async*’ to ‘ev_loop*’ for argument ‘1’ to ‘void ev_async_start(ev_loop*, ev_async*)’ Thanks, -- Jorge. On 25/06/2012, at 18:10, Jorge wrote: > Yes that works, thank you very much Isaac. > -- > Jorge. > > On 25/06/2012, at 17:58, Isaac Schlueter wrote: > >> Aha, the issue is that ~ is not being expanded in the shebang step. >> If you do this, it will work: >> >> ./configure --prefix=$HOME/JAVASCRIPT/binarios >> >> We can fix this for 0.8.1 :) >> >> On Mon, Jun 25, 2012 at 8:56 AM, Isaac Schlueter <i...@izs.me> wrote: >>> Yep. That's a bug. Please post an issue. >>> https://github.com/joyent/node/issues >>> >>> It seems to work fine if you install without a --prefix, but of >>> course, then it goes to /usr/local, which may not be what you want. >>> >>> On Mon, Jun 25, 2012 at 8:46 AM, Jorge <jo...@jorgechamorro.com> wrote: >>>> Help me please: >>>> >>>> $ ./configure --prefix=~/JAVASCRIPT/binarios/ >>>> $ make -j 3 install >>>> >>>> is giving me this: >>>> >>>> ... >>>> shebang #!~/JAVASCRIPT/binarios/bin/node >>>> ~/JAVASCRIPT/binarios/lib/node_modules/npm/bin/npm-cli.js >>>> >>>> fs.js:338 >>>> return binding.open(pathModule._makeLong(path), stringToFlags(flags), >>>> mode); >>>> ^ >>>> Error: ENOENT, no such file or directory >>>> '~/JAVASCRIPT/binarios/lib/node_modules/npm/bin/npm-cli.js' >>>> at Object.fs.openSync (fs.js:338:18) >>>> at Object.fs.readFileSync (fs.js:182:15) >>>> at shebang (/Users/jorge/JAVASCRIPT/node-v0.8.0/tools/installer.js:53:20) >>>> at run (/Users/jorge/JAVASCRIPT/node-v0.8.0/tools/installer.js:77:10) >>>> at /Users/jorge/JAVASCRIPT/node-v0.8.0/tools/installer.js:85:7 >>>> at ChildProcess.exithandler (child_process.js:534:7) >>>> at ChildProcess.EventEmitter.emit (events.js:91:17) >>>> at maybeClose (child_process.js:634:16) >>>> at Process._handle.onexit (child_process.js:676:5) >>>> make: *** [install] Error 1 >>>> >>>> in a Mac with OSX 10.6.8. >>>> -- >>>> Jorge. >