Wie installiere ich imagemagick für PHP7 auf Ubuntu?


67

Nun, kurz nachdem ich mein Ubuntu aktualisiert und daher auf PHP7 umgestiegen bin, scheine ich nicht in der Lage zu sein, die imagick-Erweiterung für PHP mit demselben alten Befehl zu installieren

sudo apt-get install php5-imagick

Ich bekomme diesen fehler (habe auch php7-imagick ausprobiert)

 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

was soll ich machen?


3
Ich denke es ist einfach sudo apt install php-imagick.
Terrance

Kann bestätigen, apt-cache searchzeigt, dass php-imagickdas Paket für PHP7 ist.
DopeGhoti

Antworten:


113

Mach einfach:

sudo apt-get install php-imagick

Dies sollte imagickfür PHP 7.0 installiert werden .


Auf meinem System versucht dies, PHP 5.5 zusammen mit ihm zu installieren.
Starbeamrainbowlabs

Ich habe: WARNUNG: Die folgenden Pakete können nicht authentifiziert werden! php-imagick Installiere diese Pakete ohne Bestätigung? [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 Not Found E: Failed holen ppa.launchpad.net/ondrej/php-7.0/ubuntu/pool/main/p/php-imagick/... 404 Not Found E: Konnte einige Archive nicht zu holen, laufen vielleicht apt-get update oder versuchen , mit --fix -ablassen?
mwm

3
Funktionierte, aber ich musste @alexg Rat befolgen, um den Dienst php7.0-fpm
xl-t

1
Möglicherweise müssen Sie laufen apt-get updateund apt-get upgrade(oder apt-get dist-upgradevor dem Laufenapt-get install php-imagick
Leo Galleguillos

Vergessen Sie nicht, Apache neu zu starten, wenn PHP7 als Apache-Modul ausgeführt wird.
Hokascha

36

Es stellte sich heraus, dass ich die fpm neu starten musste:

sudo service php7.0-fpm reload

Dinge, die ich versucht habe:

apt install php-imagickhat bei mir nicht funktioniert. Das Modul wurde für die PHP-CLI geladen (ich habe es überprüft, php -m | grep -i imagickaber über meinen Nginx-Webserver wurde es in der Liste der Module, von denen phpinfo()überhaupt berichtet wurde, nicht angezeigt).

Ich selbst eingefügt , extension=imagick.soum von /etc/php/7.0/fpm/php.iniHand, nur um sicher zu machen.

Ich habe dann versucht, das php-imagickPaket zu löschen und von cpan zu installieren:

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

Und trotzdem keine Zigarre. Es würde über das CLI funktionieren, aber nicht über Nginx.


Totenbeschwörer hier, tut mir leid, aber nach 30 Minuten hatte ich das Gefühl, ich sollte meinen Kopf gegen die Wand schlagen mental, warum es nicht funktioniert: D
Emil Borconi

@alexg, da wir imagemagick nicht kompilieren, gibt es einen Grund für die Verwendung von -devpackage of libmagickwand?
Inckka

1
@inckka nein, du solltest mit dem Binärpaket einverstanden sein. Vielen Dank!
Alexg

9

Installierte diese Pakete:

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

Jetzt ersetzen:

sudo service php7.0-fpm reload

Mit:

sudo service apache2 restart

Funktioniert super


Es hat für mich
funktioniert

3

Jetzt ist es 2018, wollte nur hervorheben, in vielen Fällen möchten Sie auch php-gd zusammen mit php-imagick installieren (wenn Sie dies zum Beispiel für WordPress installieren).

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

Die Verwendung von php-imagick impliziert php7.2-imagick, wenn 7.2 Ihre PHP-Version ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.