Я не могу переустановить phantomjs с версии 1.9.8 до 2.1.1 на моем ubuntu 16.04 Пожалуйста помоги. 1.9.8 дают мне ошибки при записи спиновых функций, в документации см., Что этот ploblem я могу решить с повторной установкой.
Как обновить phantomjs 1.9.8 до phantomjs 2.1.1 на ubuntu?
Ответ 1
Я только что установил phantomjs 2.1.1 в ubuntu 16.04 со следующими шагами, которые я нашел после нескольких поисковых запросов:
sudo apt-get install nodejs
sudo apt-get install nodejs-legacy
sudo apt-get install npm
sudo npm -g install phantomjs-prebuilt
Ответ 2
Вот как я это сделаю, если буду развиваться. Пакеты имеют версию до 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 [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]
Возможно, мы развиваемся на 0.10, 0.12, 4.X, iojs4.x, 6.X, etc
, и теперь у нас есть доступ к выбору какой-либо версии фантомов:
[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 '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'
для всей системы для сценариев развертывания и т.д.
Вот как использовать 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"
Протестировано на 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"
Ошибка
phantomjs: ошибка при загрузке разделяемых библиотек: libfontconfig.so.1: невозможно открыть файл общих объектов: нет такого файла или каталога
Try:
sudo apt-get install libfontconfig
Ответ 3
Итак, ответ 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"
Последняя строка требует sudo из-за/usr/bin, но вы можете поместить символическую ссылку в любом месте...
Ответ 4
Для тех, у кого есть проблемы с установкой, как я
это проще, чем вы думаете...
- Я удалю phantomjs: Удалите phantomjs из ubuntu
sudo apt-get remove phantomjs
или удалите папку npm из/node_modules/phantomjs
, она будет в/
, возможно, вам нужно будет удалитьln
ссылку phantomjs в/usr/bin
или/usr/local/bin/
его имяphantomjs
Пример
//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.
- установить phantomjs из npm:
npm install phantomjs
из каталога/
, npm установить его в папку/node_module/phantomjs
Пример
cd /;
npm install phantomjs
- Файл тестового бункера
Пример
//check version of phantomjs
/node_modules/phantomjs/bin/phantomjs -v
/node_modules/phantomjs/bin/phantomjs test.js
- bin файла для файлов
/usr/bin
:
Пример
ln -sf /node_modules/phantomjs/bin/phantomjs /usr/bin/phantomjs
- проверить его версию, чтобы узнать, хорошо ли это в
phantomjs -v
phantomjs -v
2.1.1
Ответ 5
phantomjs 2.1.1 теперь в комплекте с 16.04 (https://launchpad.net/ubuntu/xenial/+source/phantomjs), поэтому вы должны иметь возможность устанавливать/обновлять его как системный пакет.
Обновление: этот ответ существует в информационных целях, но теперь не рекомендуется использовать версию системного пакета из-за таких проблем, как: https://bugs.launchpad.net/ubuntu/+source/phantomjs/+bug/1605628 Это связано с проблемой с загрузкой файла, которая была исправлена вверх по течению, но характер этого исправления помешал ему работать как системный пакет.
Лучшая текущая опция - использовать предварительно построенный двоичный файл: https://bitbucket.org/ariya/phantomjs/download