如何在ubuntu上将phantomjs 1.9.8更新为phantomjs 2.1.1?

And*_*roz 13 ubuntu updates reinstall phantomjs

我无法在我的ubuntu 16.04上重新安装phantomjs 1.9.8到2.1.1版本请帮忙.1.9.8当我编写旋转函数时给我一个错误,在文档中看到这个问题我可以通过重新安装来解决.

小智 33

我刚刚在ubuntu 16.04中使用以下步骤安装了phantomjs 2.1.1,我在googling之后找到了以下步骤:

sudo apt-get install nodejs
sudo apt-get install nodejs-legacy
sudo apt-get install npm
sudo npm -g install phantomjs-prebuilt
Run Code Online (Sandbox Code Playgroud)

  • 由于PhantomJS与node.js或npm(仅为方便起见而安装)无关,因此这将为与生态系统无关的单个二进制文件安装整个生态系统. (7认同)

jmu*_*sch 5

如果我正在开发,我将如何做到这一点.这些包的版本是nodejs而不是ubuntu:

使用nvm: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 phantomjs@2.1.1

# node 4x
nvm install 4.5.0
nvm use 4.5.0
npm install phantomjs@1.9.19

# node 0.12x
nvm install 0.12
npm show phantomjs@* version
npm install phantomjs@1.9.8
Run Code Online (Sandbox Code Playgroud)

也许我们正在发展0.10, 0.12, 4.X, iojs4.x, 6.X, etc良好,现在我们可以选择任何版本的幻影:

jmunsch@ubuntu:~$ npm show phantomjs@* version
phantomjs@0.0.1 '0.0.1'
phantomjs@0.0.2 '0.0.2'
phantomjs@0.0.3 '0.0.3'
phantomjs@0.0.4 '0.0.4'
phantomjs@0.0.5 '0.0.5'
phantomjs@0.0.6 '0.0.6'
phantomjs@0.0.7 '0.0.7'
phantomjs@0.0.8 '0.0.8'
phantomjs@0.0.9 '0.0.9'
phantomjs@0.1.0 '0.1.0'
phantomjs@0.1.1 '0.1.1'
phantomjs@0.2.0 '0.2.0'
phantomjs@0.2.1 '0.2.1'
phantomjs@0.2.2 '0.2.2'
phantomjs@0.2.3 '0.2.3'
phantomjs@0.2.4 '0.2.4'
phantomjs@0.2.5 '0.2.5'
phantomjs@0.2.6 '0.2.6'
phantomjs@1.9.8 '1.9.8'
phantomjs@1.9.9 '1.9.9'
phantomjs@1.9.10 '1.9.10'
phantomjs@1.9.11 '1.9.11'
phantomjs@1.9.12 '1.9.12'
phantomjs@1.9.13 '1.9.13'
phantomjs@1.9.15 '1.9.15'
phantomjs@1.9.16 '1.9.16'
phantomjs@1.9.17 '1.9.17'
phantomjs@1.9.18 '1.9.18'
phantomjs@1.9.19 '1.9.19'
phantomjs@2.1.1 '2.1.1'
phantomjs@2.1.2 '2.1.2'
phantomjs@2.1.3 '2.1.3'
phantomjs@1.9.20 '1.9.20'
phantomjs@2.1.7 '2.1.7'
Run Code Online (Sandbox Code Playgroud)

系统范围的部署方案等

以下是使用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"
Run Code Online (Sandbox Code Playgroud)

在ubuntu 14.04上测试,也许将文件夹移动到除了之外的其他位置 ./

更新16.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"
Run Code Online (Sandbox Code Playgroud)

错误

phantomjs:加载共享库时出错:libfontconfig.so.1:无法打开共享对象文件:没有这样的文件或目录

尝试:

 sudo apt-get install libfontconfig
Run Code Online (Sandbox Code Playgroud)


Fre*_*röm 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"
Run Code Online (Sandbox Code Playgroud)

最后一行因为/ usr/bin而需要sudo,但你可以将符号链接放在任何地方......