2
一個基本的緩衝區長度::操作,我花了一段簡單的代碼從核心的NodeJS(加密):在node-gyp
編譯這個時候節點GYP崩潰關於不兼容的類型
ASSERT_IS_BUFFER(args[0]);
ssize_t klen = Buffer::Length(args[0]);
但是我自己的原生擴展,我得到以下錯誤:
../deps/v8/include/v8.h:202:5: error: assigning to 'v8::Object *volatile' from incompatible type
'v8::Value *'
TYPE_CHECK(T, S);
^
../deps/v8/include/v8.h:145:37: note: expanded from macro 'TYPE_CHECK'
*(static_cast<T* volatile*>(0)) = static_cast<S*>(0); \
^
../src/openssljs.cc:300:33: note: in instantiation of function template specialization 'v8::Handle<v8::Object>::Handle<v8::Value>'
requested here
ssize_t klen = Buffer::Length(args[0]);
^
任何想法可能是什麼原因造成這種情況?
的明確的轉換工作,但奇怪的是,我確實有節點V0 .8.14安裝在我的系統上(OSX macports)。我確實在'/ opt/local/include/node'中有錯誤的標題。 – Olivier