як встановити imagemagick для php7 на ubuntu?


67

ну, тільки після оновлення мого Ubuntu і, отже, переходу на php7, я, здається, не зможу встановити розширення imagick для php за допомогою тієї ж старої команди

sudo apt-get install php5-imagick

Я отримую цю помилку (також спробував php7-imagick)

 Package php5-imagick is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'php5-imagick' has no installation candidate

що я повинен зробити?


3
Я думаю, що це просто sudo apt install php-imagick.
Терранс

Може підтвердити, apt-cache searchпоказує, що php-imagickце пакет для php7.
DopeGhoti

Відповіді:


113

Просто зробіть:

sudo apt-get install php-imagick

Це слід встановити imagickдля PHP 7.0.


У моїй системі ця спроба встановити php 5.5 разом із ним.
starbeamrainbowlabs

Я отримав: ПОПЕРЕДЖЕННЯ: Наступні пакети не можна автентифікувати! php-imagick Встановити ці пакети без перевірки? [y / N] y Err ppa.launchpad.net/ondrej/php-7.0/ubuntu trusty / main php-imagick amd64 3.4.0 ~ rc6-1 + deb.sury.org ~ trusty + 2 404 Не знайдено E: Не вдалося отримати ppa.launchpad.net/ondrej/php-7.0/ubuntu/pool/main/p/php-imagick/… 404 Не знайдено E: Неможливо отримати деякі архіви, можливо, запустіть apt-get update або спробуйте --fix -сміття?
mwm

3
Працювало, але мені довелося дотримуватися поради @alexg, щоб перезапустити сервіс php7.0-fpm
xl-t

1
Можливо, вам знадобиться бігти apt-get updateі apt-get upgrade(або apt-get dist-upgradeдо запускуapt-get install php-imagick
Лео Галлегільос

Не забудьте перезапустити apache, якщо PHP7 працює як модуль apache.
Хокаща

36

Виявляється, мені довелося перезапустити fpm:

sudo service php7.0-fpm reload

Те, що я спробував:

apt install php-imagickне працювало для мене. Модуль завантажувався для PHP CLI (я перевірив, php -m | grep -i imagickале через свій веб-сервер nginx він не відображався у списку модулів, про які повідомлялося phpinfo()взагалі.

Я навіть вставити extension=imagick.soв /etc/php/7.0/fpm/php.iniвручну, щоб переконатися.

Потім я спробував очистити php-imagickпакунок і встановити з cpan:

sudo apt install libmagickwand-dev imagemagick php-dev
sudo pecl install imagick

І досі жодної сигари. Він буде працювати через cli, але не через nginx.


Некромант тут, вибач, але через 30 хвилин твій рядок із згадкою про перезапуск служби php змусив мене по-справжньому відчути, що я повинен бити голову в цегляну стіну ... :) Так, ти здогадався, я це забув і я їхав ментально чому це не працює: D
Еміль Борконі

@alexg, оскільки ми не збираємо Imagemagick, чи є причина використовувати -devпакет libmagickwand?
інкка

1
@inckka ні, вам слід бути в порядку з двійковим пакетом. Дякую!
алекс

9

Встановлено ці пакети:

sudo apt install libmagickwand-dev imagemagick php-dev
sudo pecl install imagick

Тепер замініть:

sudo service php7.0-fpm reload

З:

sudo service apache2 restart

Працює чудово


це працювало для мене
ранковий

3

Тепер настав 2018 рік, просто хотілося підкреслити, у багатьох випадках ви також хочете встановити php-gd разом із php-imagick (якщо ви встановите це для wordpress, наприклад).

sudo apt install php-imagick php-gd 
sudo systemctl restart apache2

Використання php-imagick означає php7.2-imagick, якщо 7.2 - це ваша версія php.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.