creationix / node-leveldb

NodeJS bindings to levelDB - a fast and lightweight key/value database library
http://code.google.com/p/leveldb/
113 stars 32 forks source link

Node 0.9.x compilation problems #17

Open rektide opened 11 years ago

rektide commented 11 years ago

Getting errors & some deprecation warnings compiling against the Node 0.9 tree:

CXX(target) Release/obj.target/leveldb/src/cpp/comparator.o ../src/cpp/comparator.cc: In function 'void nodeleveldb::UnrefComparator(v8::Persistentv8::Value, void)': ../src/cpp/comparator.cc:157:3: warning: 'static void_ v8::External::Unwrap(v8::Handlev8::Value)' is deprecated (declared at /home/rektide/archive/node/deps/v8/include/v8.h:4741) [-Wdeprecated-declarations] CXX(target) Release/obj.target/leveldb/src/cpp/handle.o In file included from ../src/cpp/handle.cc:18:0: ../src/cpp/options.h: In function 'void nodeleveldb::UnpackOptions(v8::Handlev8::Value, leveldb::Options&, v8::Persistentv8::Value)': ../src/cpp/options.h:70:63: warning: 'static void_ v8::External::Unwrap(v8::Handlev8::Value)' is deprecated (declared at /home/rektide/archive/node/deps/v8/include/v8.h:4741) [-Wdeprecated-declarations] ../src/cpp/options.h: In function 'void node_leveldb::UnpackReadOptions(v8::Handlev8::Value, leveldb::ReadOptions&)': ../src/cpp/options.h:98:61: warning: 'static void* v8::External::Unwrap(v8::Handlev8::Value)' is deprecated (declared at /home/rektide/archive/node/deps/v8/include/v8.h:4741) [-Wdeprecated-declarations] ../src/cpp/handle.cc: In static member function 'static void nodeleveldb::JHandle::GetSnapshotAsync::UnrefSnapshot(v8::Persistentv8::Value, void)': ../src/cpp/handle.cc:426:62: warning: 'static void_ v8::External::Unwrap(v8::Handlev8::Value)' is deprecated (declared at /home/rektide/archive/node/deps/v8/include/v8.h:4741) [-Wdeprecated-declarations] ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value node_leveldb::JHandle::New(const v8::Arguments&)': ../src/cpp/handle.cc:611:59: warning: 'static void* v8::External::Unwrap(v8::Handlev8::Value)' is deprecated (declared at /home/rektide/archive/node/deps/v8/include/v8.h:4741) [-Wdeprecated-declarations] ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::ReadAsync]': ../src/cpp/handle.cc:235:38: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::WriteAsync]': ../src/cpp/handle.cc:295:39: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::GetIteratorAsync]': ../src/cpp/handle.cc:341:45: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::GetSnapshotAsync]': ../src/cpp/handle.cc:401:45: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::GetPropertyAsync]': ../src/cpp/handle.cc:469:45: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::GetApproximateSizesAsync]': ../src/cpp/handle.cc:537:53: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::OpenAsync]': ../src/cpp/handle.cc:145:30: required from 'static v8::Handlev8::Value node_leveldb::JHandle::OpenAsync::Hook(const v8::Arguments&) [with T = node_leveldb::JHandle::OpenAsync]' ../src/cpp/handle.cc:592:61: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::DestroyAsync]': ../src/cpp/handle.cc:145:30: required from 'static v8::Handlev8::Value node_leveldb::JHandle::OpenAsync::Hook(const v8::Arguments&) [with T = node_leveldb::JHandle::DestroyAsync]' ../src/cpp/handle.cc:593:67: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In instantiation of 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::RepairAsync]': ../src/cpp/handle.cc:145:30: required from 'static v8::Handlev8::Value node_leveldb::JHandle::OpenAsync::Hook(const v8::Arguments&) [with T = node_leveldb::JHandle::RepairAsync]' ../src/cpp/handle.cc:594:65: required from here ../src/cpp/handle.cc:78:59: error: no matches converting function 'AsyncCallback' to type 'uv_after_workcb {aka void ()(struct uv_works, int)}' ../src/cpp/handle.cc:86:34: error: candidate is: template static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_workt) ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::RepairAsync]': ../src/cpp/handle.cc:79:3: warning: control reaches end of non-void function [-Wreturn-type] ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::DestroyAsync]': ../src/cpp/handle.cc:79:3: warning: control reaches end of non-void function [-Wreturn-type] ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::OpenAsync]': ../src/cpp/handle.cc:79:3: warning: control reaches end of non-void function [-Wreturn-type] ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value nodeleveldb::JHandle::OpAsync::AsyncEnqueue(T) [with T = node_leveldb::JHandle::GetApproximateSizesAsync]': ../src/cpp/handle.cc:79:3: warning: control reaches end of non-void function [-Wreturn-type] ../src/cpp/handle.cc: In static member function 'static v8::Handlev8::Value node_leveldb::JHandle::OpAsync::AsyncEnqueue(T*) [with T = node_leveldb::JHandle::GetPropertyAsync]': ../src/cpp/handle.cc:79:3: warning: control reaches end of non-void function [-Wreturn-type]

ulikoehler commented 11 years ago

This repo doesn't seem to be active any more, but there's a fork at https://github.com/my8bird/node-leveldb Could you test node 0.9 with that fork?

donpdonp commented 11 years ago

Same problem here with node v0.10.5

  CXX(target) Release/obj.target/leveldb/src/cpp/handle.o
../src/cpp/handle.cc: In instantiation of ‘static v8::Handle<v8::Value> node_leveldb::JHandle::OpAsync::AsyncEnqueue(T*) [with T = node_leveldb::JHandle::ReadAsync]’:
../src/cpp/handle.cc:234:38:   required from here
../src/cpp/handle.cc:77:59: error: no matches converting function ‘AsyncCallback’ to type ‘uv_after_work_cb {aka void (*)(struct uv_work_s*, int)}’
../src/cpp/handle.cc:85:34: error: candidate is: template<class T> static void node_leveldb::JHandle::OpAsync::AsyncCallback(uv_work_t*)

Failed at the leveldb@0.7.1 preinstall script.

donpdonp commented 11 years ago

I tried installing leveldb directly instead of as a dependency on databank-leveldb, and noticed this warning:

npm WARN engine leveldb@0.7.1: wanted: {"node":">=0.6.13 <0.9.0"} (current: {"node":"v0.10.5","npm":"1.2.18"})

so maybe the error is legitimate, but still bad news for node users. i'll try the my8bird repo.

donpdonp commented 11 years ago

The my8bird repo gives the same error.

  "dependencies": {
    "leveldb":"git://github.com/my8bird/node-leveldb.git"
    }
../src/cpp/handle.cc:77:59: error: no matches converting function ‘AsyncCallback’ to type ‘uv_after_work_cb {aka void (*)(struct uv_work_s*, int)}’
kyledrake commented 11 years ago

I'm having the exact same problem, with Ubuntu 12.04 and OSX running node v0.10.8:

../deps/leveldb/db/version_set.cc:58:13: warning: unused function 'IntSetToString' [-Wunused-function]
std::string IntSetToString(const std::set<uint64_t>& s) {
            ^
  SOLINK_MODULE(target) Release/bson.node
  SOLINK_MODULE(target) Release/bson.node: Finished
1 warning generated.
npm http 304 https://registry.npmjs.org/boom
npm WARN engine cryptiles@0.1.3: wanted: {"node":"0.8.x"} (current: {"node":"v0.10.8","npm":"1.2.23"})
npm WARN engine sntp@0.1.4: wanted: {"node":"0.8.x"} (current: {"node":"v0.10.8","npm":"1.2.23"})
npm WARN engine hoek@0.7.6: wanted: {"node":"0.8.x"} (current: {"node":"v0.10.8","npm":"1.2.23"})
npm WARN engine boom@0.3.8: wanted: {"node":"0.8.x"} (current: {"node":"v0.10.8","npm":"1.2.23"})
  CXX(target) Release/obj.target/leveldb/deps/leveldb/db/write_batch.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/port/port_posix.o
npm http 304 https://registry.npmjs.org/mute-stream
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/block.o
npm http 304 https://registry.npmjs.org/delayed-stream/0.0.5
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/filter_block.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/block_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/format.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/merger.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/table.o
../deps/leveldb/table/table.cc:231:13: warning: unused variable 'handle' [-Wunused-variable]
      Slice handle = iiter->value();
            ^
1 warning generated.
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/table_builder.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/table/two_level_iterator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/arena.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/bloom.o
../deps/leveldb/util/bloom.cc:50:26: warning: comparison of integers of different signs: 'size_t' (aka 'unsigned long') and 'int' [-Wsign-compare]
    for (size_t i = 0; i < n; i++) {
                       ~ ^ ~
1 warning generated.
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/cache.o
../deps/leveldb/util/cache.cc:119:15: warning: unused variable 'key' [-Wunused-variable]
        Slice key = h->key();
              ^
1 warning generated.
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/coding.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/comparator.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/crc32c.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/env.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/env_posix.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/filter_policy.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/hash.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/logging.o
../deps/leveldb/util/logging.cc:67:40: warning: comparison of integers of different signs: 'const int' and 'unsigned long long' [-Wsign-compare]
          (v == kMaxUint64/10 && delta > kMaxUint64%10)) {
                                 ~~~~~ ^ ~~~~~~~~~~~~~
1 warning generated.
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/options.o
  CXX(target) Release/obj.target/leveldb/deps/leveldb/util/status.o
  LIBTOOL-STATIC Release/leveldb.a
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-sinksource.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy-stubs-internal.o
  CXX(target) Release/obj.target/snappy/deps/snappy/snappy.o
../deps/snappy/snappy.cc:1012:20: warning: comparison of integers of different signs: 'long' and 'unsigned long' [-Wsign-compare]
    if (op - base_ <= offset - 1u) {  // -1u catches offset==0
        ~~~~~~~~~~ ^  ~~~~~~~~~~~
../deps/snappy/snappy.cc:561:13: warning: unused function 'ComputeTable' [-Wunused-function]
static void ComputeTable() {
            ^
2 warnings generated.
  LIBTOOL-STATIC Release/snappy.a
  CXX(target) Release/obj.target/leveldb/src/cpp/batch.o
  CXX(target) Release/obj.target/leveldb/src/cpp/binding.o
  CXX(target) Release/obj.target/leveldb/src/cpp/comparator.o
  CXX(target) Release/obj.target/leveldb/src/cpp/handle.o
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:234:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::ReadAsync>' requested here
    return AsyncEnqueue<ReadAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:294:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::WriteAsync>' requested here
    return AsyncEnqueue<WriteAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:340:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::GetIteratorAsync>' requested here
    return AsyncEnqueue<GetIteratorAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:400:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::GetSnapshotAsync>' requested here
    return AsyncEnqueue<GetSnapshotAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:468:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::GetPropertyAsync>' requested here
    return AsyncEnqueue<GetPropertyAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:536:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::GetApproximateSizesAsync>' requested here
    return AsyncEnqueue<GetApproximateSizesAsync>(op);
           ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:144:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::OpenAsync>' requested here
    return AsyncEnqueue<T>(op);
           ^
../src/cpp/handle.cc:591:35: note: in instantiation of function template specialization 'node_leveldb::JHandle::OpenAsync::Hook<node_leveldb::JHandle::OpenAsync>'
      requested here
  NODE_SET_METHOD(target, "open", OpenAsync::Hook<OpenAsync>);
                                  ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:144:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::DestroyAsync>' requested here
    return AsyncEnqueue<T>(op);
           ^
../src/cpp/handle.cc:592:38: note: in instantiation of function template specialization 'node_leveldb::JHandle::OpenAsync::Hook<node_leveldb::JHandle::DestroyAsync>'
      requested here
  NODE_SET_METHOD(target, "destroy", OpenAsync::Hook<DestroyAsync>);
                                     ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
../src/cpp/handle.cc:77:12: error: no matching function for call to 'AsyncQueue'
    return AsyncQueue(op, AsyncWorker<T>, AsyncCallback<T>);
           ^~~~~~~~~~
../src/cpp/handle.cc:144:12: note: in instantiation of function template specialization
      'node_leveldb::JHandle::OpAsync::AsyncEnqueue<node_leveldb::JHandle::RepairAsync>' requested here
    return AsyncEnqueue<T>(op);
           ^
../src/cpp/handle.cc:593:37: note: in instantiation of function template specialization 'node_leveldb::JHandle::OpenAsync::Hook<node_leveldb::JHandle::RepairAsync>'
      requested here
  NODE_SET_METHOD(target, "repair", OpenAsync::Hook<RepairAsync>);
                                    ^
../src/cpp/helpers.h:20:29: note: candidate function not viable: no overload of 'AsyncCallback' matching 'const uv_after_work_cb'
      (aka 'void (*const)(uv_work_t *, int)') for 3rd argument
static inline Handle<Value> AsyncQueue(
                            ^
9 errors generated.
make[1]: *** [Release/obj.target/leveldb/src/cpp/handle.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/Cellar/node/0.10.8/lib/node_modules/npm/node_modules/node-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:789:12)
gyp ERR! System Darwin 12.3.0
gyp ERR! command "node" "/usr/local/Cellar/node/0.10.8/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build"
gyp ERR! cwd /usr/local/share/npm/lib/node_modules/bitcoinjs/node_modules/leveldb
gyp ERR! node -v v0.10.8
gyp ERR! node-gyp -v v0.9.5
gyp ERR! not ok 
make: *** [build] Error 1
npm ERR! weird error 2
npm ERR! not ok code 0
kyledrake commented 11 years ago

You know what, this might just be a casting issue. See: https://github.com/lloyd/node-memwatch/pull/27