2014-05-15 2 views
2

J'essaye de reconstruire node-opencv pour l'utiliser avec node-webkit. Pour ce faire, vous devez utiliser nw-gyp mais je rencontre des erreurs. Pourriez-vous me donner un aperçu de la raison pour laquelle cela pourrait être?Impossible de reconstruire node-opencv avec nw-gyp

[~/nw_cv/node_modules/opencv] nw-gyp rebuild --target=0.9.2 
gyp info it worked if it ends with ok 
gyp info using [email protected] 
gyp info using [email protected] | darwin | x64 
gyp info spawn python 
gyp info spawn args [ '/usr/local/lib/node_modules/nw-gyp/gyp/gyp_main.py', 
gyp info spawn args 'binding.gyp', 
gyp info spawn args '-f', 
gyp info spawn args 'make', 
gyp info spawn args '-I', 
gyp info spawn args '/Users/moog/nw_cv/node_modules/opencv/build/config.gypi', 
gyp info spawn args '-I', 
gyp info spawn args '/usr/local/lib/node_modules/nw-gyp/addon.gypi', 
gyp info spawn args '-I', 
gyp info spawn args '/Users/moog/.nw-gyp/0.9.2/common.gypi', 
gyp info spawn args '-Dlibrary=shared_library', 
gyp info spawn args '-Dvisibility=default', 
gyp info spawn args '-Dnode_root_dir=/Users/moog/.nw-gyp/0.9.2', 
gyp info spawn args '-Dmodule_root_dir=/Users/moog/nw_cv/node_modules/opencv', 
gyp info spawn args '--depth=.', 
gyp info spawn args '--generator-output', 
gyp info spawn args 'build', 
gyp info spawn args '-Goutput_dir=.' ] 
gyp info spawn make 
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ] 
    CXX(target) Release/obj.target/opencv/src/init.o 
In file included from ../src/init.cc:2: 
../src/Point.h:13:59: error: unknown type name 'AccessorInfo' 
     static Handle<Value> GetX(Local<String> prop, const AccessorInfo &info); 
                 ^
../src/Point.h:14:59: error: unknown type name 'AccessorInfo' 
     static Handle<Value> GetY(Local<String> prop, const AccessorInfo &info); 
                 ^
../src/Point.h:15:84: error: unknown type name 'AccessorInfo' 
     static void RaiseImmutable(Local<String> property, Local<Value> value, const AccessorInfo& info); 
                       ^
3 errors generated. 
make: *** [Release/obj.target/opencv/src/init.o] Error 1 
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2 
gyp ERR! stack  at ChildProcess.onExit (/usr/local/lib/node_modules/nw-gyp/lib/build.js:267:23) 
gyp ERR! stack  at ChildProcess.EventEmitter.emit (events.js:98:17) 
gyp ERR! stack  at Process.ChildProcess._handle.onexit (child_process.js:797:12) 
gyp ERR! System Darwin 12.4.0 
gyp ERR! command "node" "/usr/local/bin/nw-gyp" "rebuild" "--target=0.9.2" 
gyp ERR! cwd /Users/moog/nw_cv/node_modules/opencv 
gyp ERR! node -v v0.10.26 
gyp ERR! nw-gyp -v v0.12.2 
gyp ERR! not ok 

Merci!

Répondre

2

Comme vous pouvez voir le compilateur ne peut pas trouver le type AccessorInfo. C'est parce qu'il n'y a plus de telle classe dans l'API v8. node-webkit v0.9.2 est basé sur la branche node 0.11.x, donc certains addons natifs peuvent ne pas compiler ou fonctionner correctement à cause des changements de l'API v8. Vous devez utiliser la branche node-webkit 0.8.x dans ces cas.

+0

Ah! merci, je ne le savais pas, je vais essayer ça maintenant. – boom

+0

Cela a fonctionné, merci beaucoup, mais maintenant je frappe cette erreur, http://stackoverflow.com/questions/23659416/symbol-not-found-ztvn2cv11-inputarraye. – boom

+0

Eh bien, cela ressemble plus à un bug "node-opencv'. try node-webkit 0.8.6 – vkurchatkin