frida / frida-node

Frida Node.js bindings
282 stars 66 forks source link

Install on ArchLinux - frida-core.h not exists #19

Closed strano666 closed 8 years ago

strano666 commented 8 years ago

Hi, i've a problem with the installation of frida-node on ArchLinux x64. I'm running nodejs 5.6.0.

The problem is the same, both npm install using the binary and using npm install frida

The output is

[strano@stranobeast frida-node-master]$ npm install
npm WARN deprecated lodash.padleft@3.1.1: This package has been renamed. Use lodash.padstart@^4.0.0.
npm WARN deprecated lodash.padright@3.1.1: This package has been renamed. Use lodash.padend@^4.0.0.
npm WARN deprecated graceful-fs@2.0.3: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN prefer global node-gyp@3.3.0 should be installed with -g
npm WARN prefer global node-gyp@3.3.0 should be installed with -g

 > frida@0.0.0 install /home/strano/Sviluppo/Frida/Frida_JS/frida-node-master
 > prebuild --install

make: ingresso nella directory "/home/strano/Sviluppo/Frida/Frida_JS/frida-node-master/build"
  CXX(target) Release/obj.target/frida_binding/src/addon.o
In file included from ../src/runtime.h:4:0,
                 from ../src/glib_object.h:4,
                 from ../src/application.h:4,
                 from ../src/addon.cc:1:
../src/glib_context.h:4:24: fatal error: frida-core.h: No such file or directory
compilation terminated.
frida_binding.target.mk:115: recipe for target 'Release/obj.target/frida_binding/src/addon.o' failed
make: *** [Release/obj.target/frida_binding/src/addon.o] Errore 1
make: uscita dalla directory "/home/strano/Sviluppo/Frida/Frida_JS/frida-node-master/build"
prebuild ERR! build error 
prebuild ERR! stack Error: \`make\` failed with exit code: 2
prebuild ERR! stack     at ChildProcess.onExit (/home/strano/Sviluppo/Frida/Frida_JS/frida-node-master/node_modules/node-gyp/lib/build.js:276:23)
prebuild ERR! stack     at ChildProcess.emit (events.js:110:17)
prebuild ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
prebuild ERR! not ok 
prebuild ERR! build Error: \`make\` failed with exit code: 2
prebuild ERR! build     at ChildProcess.onExit (/home/strano/Sviluppo/Frida/Frida_JS/frida-node-master/node_modules/node-gyp/lib/build.js:276:23)
prebuild ERR! build     at ChildProcess.emit (events.js:110:17)
prebuild ERR! build     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)

npm ERR! Linux 4.3.3-2-ARCH
npm ERR! argv "node" "/usr/local/bin/npm" "install"
npm ERR! node v0.12.2
npm ERR! npm  v3.3.6
npm ERR! code ELIFECYCLE
npm ERR! frida@0.0.0 install: \`prebuild --install\`
npm ERR! Exit status 2
npm ERR! 
npm ERR! Failed at the frida@0.0.0 install script 'prebuild --install'.
npm ERR! This is most likely a problem with the frida package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     prebuild --install
npm ERR! You can get their info via:
npm ERR!     npm owner ls frida
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/strano/Sviluppo/Frida/Frida_JS/frida-node-master/npm-debug.log

I attach also the log file of npm.

npm-debug.log.zip

Tnx for the help!

SomeoneWeird commented 8 years ago

If you want to compile from source, you need to export FRIDA with the absolute path to https://github.com/frida/frida on your local disk.

strano666 commented 8 years ago

The problem is the same!

SomeoneWeird commented 8 years ago

Did you build the frida repository before you tried building frida-node?

juliangruber commented 8 years ago

@ralphtheninja could we provide prebuilds for this setup?

strano666 commented 8 years ago

@SomeoneWeird i've not built the repository.

I tried with python and all it's ok, without build the entire repository. Only with pip install frida After it i would to use JS, so i tried with npm install frida And i've the error above. I've to build entire repository?

ralphtheninja commented 8 years ago

@ralphtheninja could we provide prebuilds for this setup?

@juliangruber I'm guessing this is just linux x64 so should be no problem. Currently @oleavr is only building for node 4 and 5, see https://github.com/frida/frida-node/blob/master/.prebuildrc#L1-L5 and the OP is using 0.12

ralphtheninja commented 8 years ago

@strano666 Would you mind doing npm i frida --verbose and post that into a gist instead?

ralphtheninja commented 8 years ago

@oleavr Anything against supporting prebuilts for 0.12 as well, or do we have other things preventing us from doing that, e.g. harmony stuff etc?

strano666 commented 8 years ago

@ralphtheninja here the gist script https://gist.github.com/strano666/3161a335a66541334295

ralphtheninja commented 8 years ago

@juliangruber @oleavr https://gist.github.com/strano666/3161a335a66541334295#file-frida-node-install-error-L4214

strano666 commented 8 years ago

Sorry @ralphtheninja , i didn't understand. Nodejs 5.6.0 it's not supported?

ralphtheninja commented 8 years ago

Sorry @ralphtheninja , i didn't understand. Nodejs 5.6.0 it's not supported?

node 5.6.0 is supported, but you're not using it :wink:

oleavr commented 8 years ago

@oleavr Anything against supporting prebuilts for 0.12 as well, or do we have other things preventing us from doing that, e.g. harmony stuff etc?

@ralphtheninja No we still build on 0.12, but it's tempting to bump that requirement to 4.0 so we can simplify the code a bit (with yield and other goodies). The reason I limited building to just the last two stable releases is so we don't run out of disk space as quickly. But perhaps we can start garbage-collecting old releases at some point?

strano666 commented 8 years ago

Wow @ralphtheninja ...i'm officially confused. I downloaded nodejs from the official package manager of Arch, as suggested in the nodejs website, and the version is 5.6.0. But with the command node --version the output is v0.12.2 .Why?

I'm very sorry, but i'm very noob with node.

strano666 commented 8 years ago

I'm very sorry but was a problem of my machine! :(

I had a conflict between two node packages and npm has used the wrong, the oldest. I've resolved! :) Tnx for your time and sorry!

p.s. is the first issue post on GitHub. Have i close?

ralphtheninja commented 8 years ago

p.s. is the first issue post on GitHub. Have i close?

Aye, if you believe this to be fixed you usually close the issue you opened to signal other people this is no longer an issue. Happy it worked out for you!

strano666 commented 8 years ago

Yeah..it's all ok about the post problem!

tnx to all!