Broken with Node v0.2.3?
MPV opened this issue · 3 comments
Hi,
I just recently updated my Node to version 0.2.3 and now I started getting this error message when I run "node test/all.js":
$ node test/all.js
>>> running 8 tests
>>> run test-login.js
dyld: lazy symbol binding failed: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: ............/libspotify-node/spotify/binding.node
Expected in: flat namespace
dyld: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: ......../libspotify-node/spotify/binding.node
Expected in: flat namespace
>>> fail test-login.js -- status null
>>> ran 1 of 8 tests with 1 failure(s)
Right. You want to clean up your node installation. If you're using homebrew: brew cleanup.
Get the changes that I just pushed. It has to do with a V8 API change: http://groups.google.com/group/v8-users/browse_thread/thread/38e8c726b8b1f9c5/96e1ab947148945b.
Then make sure you run node-waf configure before building and running tests.
Hi Liesen,
I am very thankful for your help!
Unfortunately I haven't been able to get it work yet.
I ran cleanup:
$ brew cleanup
Pruned 0 symbolic links and 66 directories from /usr/local
And pulled your changes. And then I ran:
$ node-waf configure
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 /Users/vs/.node_libraries
Checking for node prefix : ok /usr/local
'configure' finished successfully (0.509s)
Next thing was to run the tests:
$ node test/all.js
>>> running 8 tests
>>> run test-login.js
dyld: lazy symbol binding failed: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: /Users/vs/Dropbox/Sites/libspotify-node/spotify/binding.node
Expected in: flat namespace
dyld: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: /Users/vs/Dropbox/Sites/libspotify-node/spotify/binding.node
Expected in: flat namespace
>>> fail test-login.js -- status null
>>> ran 1 of 8 tests with 1 failure(s)
Then I checked and found that I was running node v0.2.2, updated Homebrew, updated Node to v0.2.3, ran brew cleanup (it removed node v0.2.2) and ran it all again with same error:
$ node-waf configure build test
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 /Users/vs/.node_libraries
Checking for node prefix : ok /usr/local/Cellar/node/0.2.3
'configure' finished successfully (0.053s)
Waf: Entering directory `/Users/vs/Sites/libspotify-node/build'
Waf: Leaving directory `/Users/vs/Sites/libspotify-node/build'
'build' finished successfully (0.827s)
>>> running 8 tests
>>> run test-login.js
dyld: lazy symbol binding failed: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: /Users/vs/Dropbox/Sites/libspotify-node/spotify/binding.node
Expected in: flat namespace
dyld: Symbol not found: __ZN2v814ObjectTemplate25SetIndexedPropertyHandlerEPFNS_6HandleINS_5ValueEEEjRKNS_12AccessorInfoEEPFS3_jNS_5LocalIS2_EES6_EPFNS1_INS_7BooleanEEEjS6_ESG_PFNS1_INS_5ArrayEEES6_ES3_
Referenced from: /Users/vs/Dropbox/Sites/libspotify-node/spotify/binding.node
Expected in: flat namespace
>>> fail test-login.js -- status null
>>> ran 1 of 8 tests with 1 failure(s)
tests failed
Any ideas?
it seems like the v8.h you compile against is different from what the v8 runtime (or node?) uses. i'd try reinstalling both.