come installare imagemagick per php7 su ubuntu?


67

bene, subito dopo aver aggiornato Ubuntu e quindi passare a php7, mi sembra di non essere in grado di installare l'estensione imagick per php usando lo stesso vecchio comando

sudo apt-get install php5-imagick

Ottengo questo errore (ho provato anche 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

cosa dovrei fare?


3
Penso che sia giusto sudo apt install php-imagick.
Terrance

Può confermare, apt-cache searchmostra che php-imagickè il pacchetto per php7.
DopeGhoti,

Risposte:


113

Basta fare:

sudo apt-get install php-imagick

Questo dovrebbe essere installato imagickper PHP 7.0.


Sul mio sistema questo tenta di installare php 5.5 insieme ad esso.
starbeamrainbowlabs

Ho ricevuto: ATTENZIONE: i seguenti pacchetti non possono essere autenticati! php-imagick Installare questi pacchetti senza verifica? [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 non trovato E: non riuscito recuperare ppa.launchpad.net/ondrej/php-7.0/ubuntu/pool/main/p/php-imagick/… 404 non trovato E: impossibile recuperare alcuni archivi, magari eseguire apt-get update o provare con --fix -mancante?
mwm,

3
Ha funzionato, ma ho dovuto seguire i consigli di @alexg per riavviare il servizio php7.0-fpm
xl-t,

1
Potrebbe essere necessario correre apt-get updatee apt-get upgrade(o apt-get dist-upgradeprima di correreapt-get install php-imagick
Leo Galleguillos,

Non dimenticare di riavviare apache se PHP7 è in esecuzione come modulo apache.
Hokascha,

37

Risulta che ho dovuto riavviare il fpm:

sudo service php7.0-fpm reload

Cose che ho provato:

apt install php-imagicknon ha funzionato per me. Il modulo veniva caricato per l'interfaccia della riga di comando di PHP (ho verificato php -m | grep -i imagickma tramite il mio server web nginx non è stato visualizzato nell'elenco dei moduli segnalati da phpinfo()tutti.

Ho anche inserito extension=imagick.soa /etc/php/7.0/fpm/php.inimano, solo per assicurarsi.

Ho quindi provato a eliminare il php-imagickpacchetto e installare da cpan:

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

E ancora, nessun sigaro. Funzionerebbe attraverso il cli ma non tramite nginx.


Negromante qui, scusa, ma dopo 30 minuti la tua linea che menziona il riavvio del servizio php mi ha fatto sentire davvero come se dovessi sbattere la testa contro il muro di mattoni ... :) Sì, hai indovinato, ho dimenticato quel pezzo e stavo andando mentale perché non funziona: D
Emil Borconi

@alexg dato che non stiamo compilando imagemagick, c'è qualche motivo per usare il -devpacchetto di libmagickwand?
Inckka,

1
@inckka no, dovresti essere a posto con il pacchetto binario. Grazie!
alexg

9

Installati questi pacchetti:

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

Ora sostituisci:

sudo service php7.0-fpm reload

Con:

sudo service apache2 restart

Funziona alla grande


ha funzionato per me
matinict

3

Ora è il 2018, volevo solo evidenziare, in molti casi, vorresti anche installare php-gd insieme a php-imagick (se stai installando questo per wordpress per esempio).

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

L'uso di php-imagick implica php7.2-imagick se 7.2 è la versione di php.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.