Medium / phantomjs

NPM wrapper for installing phantomjs
Other
1.42k stars 436 forks source link

Unable to detect phantomjs binary inspite of being added in PATH #768

Closed ghatwala closed 6 years ago

ghatwala commented 6 years ago

Hi All,

As the phantomjs binary is not available for my platform/OS- ppc64le/linux at below location

Had to built it from source and have added the PATH location as well

My env details

# phantomjs --version
1.9.20

# npm --version
5.6.0

# node --version
v8.9.0

# arch
ppc64le

# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.3 (Maipo)

# whereis phantomjs
phantomjs: /usr/bin/phantomjs

However am still getting build errors whilst building this package - https://github.com/Modernizr/Modernizr .

# npm install
npm WARN deprecated coffee-script@1.10.0: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm WARN deprecated http2@3.3.7: Use the built-in module in node 9.0.0 or newer, instead
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated travis-after-all@1.4.3: The functionality this package provided is now supported natively by Travis CI via Build Stages (see: https://blog.travis-ci.com/2017-05-11-introducing-build-stages).
npm WARN deprecated jade@0.26.3: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@2.0.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
npm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead

> phantomjs@1.9.20 install /root/amit/Modernizr/node_modules/phantomjs
> node install.js

Considering PhantomJS found at /usr/bin/phantomjs
Found PhantomJS at /usr/bin/phantomjs ...verifying
PhantomJS detected, but wrong version 1.9.20 @ /usr/bin/phantomjs.
Unexpected platform or architecture: linux/ppc64
It seems there is no binary available for your platform/architecture
Try to install PhantomJS globally
npm WARN grunt-mocha@0.4.15 requires a peer of grunt@~0.4 but none is installed. You must install peer dependencies yourself.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! phantomjs@1.9.20 install: `node install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the phantomjs@1.9.20 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2017-12-26T09_15_37_755Z-debug.log

As i understand from the README here that we can still ensure that we use our custom binary of phantomjs present locally by adding it to the PATH .

But as can be seen here - "https://github.com/Medium/phantomjs/blob/master/install.js#L408" which is deduced from here - "https://github.com/Medium/phantomjs/blob/master/lib/util.js#L91" , seems like my platform arch- 'ppc64le' isn't supported here as yet . So this function returns NULL.

Let me know if its possible to add this "arch" type here so that above "npm install" works or any other suggestion to overcome this hitch would be welcome as well.

ghatwala commented 6 years ago

resolved this error , refer this issue for details - https://github.com/Modernizr/Modernizr/issues/2273