creationix / node-gir

Node bindings to libgirepository
http://live.gnome.org/GObjectIntrospection
MIT License
231 stars 58 forks source link

Can't install on ubuntu #39

Open cranic opened 10 years ago

cranic commented 10 years ago
npm WARN package.json gir-test@0.0.0 No description
npm WARN package.json gir-test@0.0.0 No repository field.
npm WARN package.json gir-test@0.0.0 No README data
npm http GET https://registry.npmjs.org/gir
npm http 304 https://registry.npmjs.org/gir

> gir@0.1.0 install /home/alan/Projetos/gir/node_modules/gir
> node-gyp rebuild

static library binding.gyp:girepository#target has several files with the same basename:
  function: src/function.cc src/types/function.cc
Some build systems, e.g. MSVC08, cannot handle that.
gyp: Duplicate basenames in sources section, see list above
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:424:16)
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 Linux 3.8.0-30-generic
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/alan/Projetos/gir/node_modules/gir
gyp ERR! node -v v0.10.18
gyp ERR! node-gyp -v v0.10.9
gyp ERR! not ok 
npm ERR! weird error 1
npm ERR! not ok code 0
walling commented 10 years ago

I get the same error on Mac OS X Mavericks.

alexand7u commented 10 years ago

same here static library binding.gyp:girepository#target has several files with the same basename: function: src/function.cc src/types/function.cc Some build systems, e.g. MSVC08, cannot handle that. gyp: Duplicate basenames in sources section, see list above

k2052 commented 10 years ago

I was able to install from @piotras fork. But running the tests (or any examples) returns the following error:

module.js:356
  Module._extensions[extension](this, filename);
                               ^
Error: Symbol girepository_module not found.
    at Module.load (module.js:356:32)

I'm not very knowledgeable when it comes to node addon building but I think this is do to a missing usage of the NODE_MODULE macro which is required in node > 0.10.0. It might as simple as adding NODE_MODULE(girepository, init); to src/init.cc, but I'm not really sure. Once I fully wrap my head around node addons and node-gyp I'll tackle this and make a pull request. But if anyone else wants to tackle it before then or provide insight that would be awesome!

k2052 commented 10 years ago

My fork is now semi-working for me, I can run some examples but the tests are exploding at the moment. Not satisfied that I did things correctly yet (so might be awhile before I make a pull request) but if anyone is looking to install on Ubuntu with recent node versions then my fork is the place to start. Once I get tests passing I'll make a pull request.