Git Product home page Git Product logo

Comments (8)

gflarity avatar gflarity commented on June 14, 2024

Ok, I searched the node mailing list and looks like this is caused by a 64 node vs 32 shared object. Or vice versa though I doubt it. Apparently node-gyp checks these sort of things and should be used instead of node-waf.

Quickfix: It should be possible to modify the node-waf leveldb build logic to force 64bit.

Proper fix: Start using node-gyp instead of node-waf.

Not sure when I'll get a chance to take a look at this more. Hopefully someone else will be to be to the punch.

from node-leveldb.

gflarity avatar gflarity commented on June 14, 2024

I couldn't get waf to work, think it's actually an issue with the universal binary having both versions... gyp looks promising though. The chromium project already has .gyp files for leveldb and snappy and those are the only deps.

from node-leveldb.

pconstr avatar pconstr commented on June 14, 2024

I had a go at adapting the chromium .gyp file for leveldb - https://github.com/pconstr/node-leveldb
It works (as in, it apparently passes the tests) for me on OS X 10.6.8 with node 0.8.1, but on Linux loading the library fails with an undefined symbol (_ZN7leveldb10WriteBatchC1Ev). I'm probably doing something silly.
I may find some time to pursue this a bit further in a few days but right now that's as far as I can go.

from node-leveldb.

gflarity avatar gflarity commented on June 14, 2024

I'm seeing that _ZN7leveldb10WriteBatchC1Ev stuff as well. This is mangled C++ function name, when you put it through c++filt you get:

leveldb::Options::Options()

So node is looking for this, but can't find it.

from node-leveldb.

pconstr avatar pconstr commented on June 14, 2024

I believe that's leveldb::WriteBatch::WriteBatch() (typo?)

'nm build/Release/leveldb.node' shows that symbol as undefined
U _ZN7leveldb10WriteBatchC1Ev

from node-leveldb.

pconstr avatar pconstr commented on June 14, 2024

a bunch of other leveldb symbols are undefined:

     U _ZN7leveldb10ComparatorD2Ev
     U _ZN7leveldb10WriteBatch3PutERKNS_5SliceES3_
     U _ZN7leveldb10WriteBatch5ClearEv
     U _ZN7leveldb10WriteBatch6DeleteERKNS_5SliceE
     U _ZN7leveldb10WriteBatchC1Ev
     U _ZN7leveldb10WriteBatchD1Ev
     U _ZN7leveldb2DB4OpenERKNS_7OptionsERKSsPPS0_
     U _ZN7leveldb6Status9CopyStateEPKc
     U _ZN7leveldb7OptionsC1Ev
     U _ZN7leveldb8RepairDBERKSsRKNS_7OptionsE
     U _ZN7leveldb9DestroyDBERKSsRKNS_7OptionsE
     U _ZNK7leveldb6Status8ToStringEv

from node-leveldb.

pconstr avatar pconstr commented on June 14, 2024

but 'nm build/Release/obj.target/leveldb/deps/leveldb/db/write_batch.o' finds the symbol:

00000000 T _ZN7leveldb10WriteBatchC1Ev

maybe we're missing a linker flag somewhere?

from node-leveldb.

my8bird avatar my8bird commented on June 14, 2024

This should be resolved now that #39 is closed.

from node-leveldb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.