2016-04-25 8 views
13

私のubuntuにphantomjs 1.9.8から2.1.1バージョンを再インストールすることはできません16.04 助けてください。 1.9.8私はスピン関数を書くときに私にエラーを与えます、ドキュメントでは、私は再起動で解決することができますこのプブレムを参照してください。ubuntuのphantomjs 1.9.8をphantomjs 2.1.1に更新するには?

答えて

31

私はちょうど私がグーグルのビットの後に見つかった、以下の手順でのUbuntu 16.04でphantomjs 2.1.1をインストール:

ここ
sudo apt-get install nodejs 
sudo apt-get install nodejs-legacy 
sudo apt-get install npm 
sudo npm -g install phantomjs-prebuilt 
+6

生態系と関係しています。 –

+1

本当に十分です。ファントムを正常にインストールするには、nodej(およびnodejs-legacy)がnpmで必要です。私が従った手順は、Pythonでセレンと一緒に使うことでした。 Npmはいつでも一度アンインストールできます。これは、PhantomJSドライバをセレンで動作させるための非常に速い方法でした。 – dmdip

5

は私が開発していた場合、私はそれを行うだろうかです。パッケージはnodejsにバージョン管理されていないのubuntu:

使用nvm

[email protected]:~$ npm show [email protected]* version 
[email protected] '0.0.1' 
[email protected] '0.0.2' 
[email protected] '0.0.3' 
[email protected] '0.0.4' 
[email protected] '0.0.5' 
[email protected] '0.0.6' 
[email protected] '0.0.7' 
[email protected] '0.0.8' 
[email protected] '0.0.9' 
[email protected] '0.1.0' 
[email protected] '0.1.1' 
[email protected] '0.2.0' 
[email protected] '0.2.1' 
[email protected] '0.2.2' 
[email protected] '0.2.3' 
[email protected] '0.2.4' 
[email protected] '0.2.5' 
[email protected] '0.2.6' 
[email protected] '1.9.8' 
[email protected] '1.9.9' 
[email protected] '1.9.10' 
[email protected] '1.9.11' 
[email protected] '1.9.12' 
[email protected] '1.9.13' 
[email protected] '1.9.15' 
[email protected] '1.9.16' 
[email protected] '1.9.17' 
[email protected] '1.9.18' 
[email protected] '1.9.19' 
[email protected] '2.1.1' 
[email protected] '2.1.2' 
[email protected] '2.1.3' 
[email protected] '1.9.20' 
[email protected] '2.1.7' 

https://github.com/creationix/nvm

touch ~/.profile 
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.7/install.sh | bash 

source ~/.profile 
# node 6x 
nvm install 6.5.0 
npm install [email protected] 

# node 4x 
nvm install 4.5.0 
nvm use 4.5.0 
npm install [email protected] 

# node 0.12x 
nvm install 0.12 
npm show [email protected]* version 
npm install [email protected] 

はおそらく、我々は今、我々がphantomjsのいずれかのバージョンを選択するためのアクセス権を持っているだけでなく0.10, 0.12, 4.X, iojs4.x, 6.X, etcに開発しています配備シナリオなどのためにシステム全体に適用されます。

ここではtarballの使用方法を説明します

export PHANTOM_JS_VERSION=2.1.1 
wget "https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$PHANTOM_JS_VERSION-linux-x86_64.tar.bz2" 
tar xvfj "./phantomjs-$PHANTOM_JS_VERSION-linux-x86_64.tar.bz2" 
ln -sf "./phantomjs-$PHANTOM_JS_VERSION-linux-x86_64/bin/phantomjs" "/usr/bin" 
は、おそらく16.04のために ./

更新以外の別の場所にフォルダを移動し、Ubuntuの14.04でテスト:または動作しない場合があり

Wgetは以下を参照してくださいhttps://github.com/Medium/phantomjs/issues/161

# install dependencies 
sudo apt-get install libfontconfig 
# extract the tar file 
tar xvfj "./phantomjs-$PHANTOM_JS_VERSION-linux-x86_64.tar.bz2" 
# use full path 
ln -sf "$(pwd)/phantomjs-$PHANTOM_JS_VERSION-linux-x86_64/bin/phantomjs" "/usr/bin" 

エラー

phantomjs:エラー共有ライブラリのロード中に:libfontconfig.so.1を:共有オブジェクトファイルを開くことができません:そのようなファイルやディレクトリはありませんが

試してみてください。私のようにインストールするには、問題を抱えている人のために

sudo apt-get install libfontconfig 
+0

Ubuntu 16.04で動作しません – 3zzy

+0

あなたの権利は@ 3zzyです。依存関係の問題のように更新され、相対パスへのリンクが問題になっている可能性があります。また何らかの理由で 'wget'が動かないので、私はマシンにタールボールを' scp'します。同じ403アクセス拒否エラーのgithub問題を追加しました。 – jmunsch

1

あなたが考えるよりも簡単です...

  • 私はphantomjsをアンインストール:多分あなたはそれの名前がphantomjs
  • ある /usr/bin/usr/local/bin/でphantomjsの lnリンクを削除する必要があります、それは /になりますUbuntuの sudo apt-get remove phantomjsからphantomjsを削除するか、 /node_modules/phantomjsのNPMフォルダを削除

//use this if you installed with apt-get 
sudo apt-get remove phantomjs *remove the phantomjs 
rm /usr/bin/phantomjs   *use this if the link didn't remove. 

//use this if you installed from npm: like this: npm install phantomjs 
rm -R /node_modules/phantomjs *note: it will be in other folder, search it. 
  • NPMからphantomjsをインストール:NPM、/ディレクトリからnpm install phantomjsをフォルダにインストール/node_module/phantomjs

cd /; 
npm install phantomjs 
  • テストbinファイル

//check version of phantomjs 
/node_modules/phantomjs/bin/phantomjs -v 
/node_modules/phantomjs/bin/phantomjs test.js 
  • /usr/binへのリンクファイルビン:それは私の場合には2.1.1
phantomjs -v大丈夫かどうかを確認するために、それの

ln -sf /node_modules/phantomjs/bin/phantomjs /usr/bin/phantomjs

  • チェックバージョン10
5

だから、jmunschの答えは私のために動作しますが、ただ、明確かつ最小限のレシピを提供する:

export PHANTOM_JS_VERSION=2.1.1 

sudo apt-get install libfontconfig 

wget "https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-$PHANTOM_JS_VERSION-linux-x86_64.tar.bz2" 

tar xvfj "./phantomjs-$PHANTOM_JS_VERSION-linux-x86_64.tar.bz2" 

ln -sf "$(pwd)/phantomjs-$PHANTOM_JS_VERSION-linux-x86_64/bin/phantomjs" "/usr/bin" 

最後の行が原因では/ usr/binにのsudoを必要としますが、あなたはどこにでもシンボリックリンクを置くことができます...

1

現在、phantomjs 2.1.1は16.04(https://launchpad.net/ubuntu/xenial/+source/phantomjs)にバンドルされているため、システムパッケージとしてインストール/アップグレードすることができます。

更新:この答えは有益な目的のために存在しますが、原因のような問題のために、今のシステムパッケージのバージョンを使用することををお勧めしません。これは、上流に固定されたファイルアップロードの問題に関連しているhttps://bugs.launchpad.net/ubuntu/+source/phantomjs/+bug/1605628が、修正プログラムの性質により、システムパッケージとしての動作が妨げられました。

最良の現在のオプションからビルド済みのバイナリを使用している:PhantomJSはNode.jsのか、NPMとは何の関係(便宜のためにのみインストール)を持っていないので、これは何も持っていない単一のバイナリのためのエコシステム全体をインストール​​

関連する問題