kapouer / node-webkitgtk

webkitgtk bindings for :rocket: Node.js
MIT License
189 stars 13 forks source link

how to setup on Mac #29

Open procoder-net opened 9 years ago

procoder-net commented 9 years ago

There is no steps for mac.

Error: Cannot find module '/Users/i055023/node_modules/webkitgtk/lib/webkitgtk.node'

i get this errr...can you please help?

kapouer commented 9 years ago

I cannot support compiling it for non-linux platforms. The easiest route to get it running on OSX would start by compiling webkitgtk (the library), along with gtk/glib, X, etc... Then compiling node-webkitgtk would be easy. A cleaner way would be to port node-webkitgtk to the OSX WebKit API...

procoder-net commented 9 years ago

hmm...thanks....my dev is mac and deployment is ubuntu...and some will test on mac locally and difficult to check...

kapouer commented 9 years ago

Hi again - is this for running DOM ? or for getting png/pdf ? For the former there is now fallback to jsdom.

inferiorhumanorgans commented 7 years ago

It's almost certainly easier to get this up and running on OSX than attempting to use a whole new API. On BSD, for example, the biggest trick is to ensure that an old enough version of node is installed for everything to compile. Then just adjust the paths from /usr to /usr/local as necessary, dropping the -ld bits along the way.

kapouer commented 7 years ago

Sure - and i believe the webkitgtk 2.14 library can be compiled on osx, though it's gonna be much more painful than apt-get install libwebkit2gtk-4.0-dev. As i said, node-webkitgtk can work with jsdom if it doesn't need rendering to pdf or png. Otherwise maybe Docker or virtualization is an easier approach.

inferiorhumanorgans commented 7 years ago

macports already has webkit2gtk at 2.14.2.

https://github.com/macports/macports-ports/blob/master/www/webkit2-gtk/Portfile

But that also doesn't solve the case of trying to get this working on BSDs (or other non-Linux systems).

kapouer commented 7 years ago

All right, i'll happily accept PR regarding building on OSX. https://github.com/kapouer/node-webkitgtk/blob/master/binding.gyp obviously needs to be fixed. https://github.com/uWebSockets/uWebSockets/blob/master/nodejs/dist/binding.gyp is an example of a simple, working, multi-platform binding.gyp.