Làm cách nào để cài đặt fantemagick cho php7 trên Ubuntu?


67

tốt, ngay sau khi nâng cấp Ubuntu của tôi và do đó chuyển sang php7, tôi dường như không thể cài đặt tiện ích mở rộng hình ảnh cho php bằng cách sử dụng cùng một lệnh cũ

sudo apt-get install php5-imagick

Tôi gặp lỗi này (đã thử php7-fantick)

 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

tôi nên làm gì?


3
Tôi nghĩ rằng nó chỉ là sudo apt install php-imagick.
Terrance

Có thể xác nhận, apt-cache searchcho thấy đó php-imagicklà gói cho php7.
DopeGhoti

Câu trả lời:


113

Cứ làm đi:

sudo apt-get install php-imagick

Điều này sẽ cài đặt imagickcho PHP 7.0.


Trên hệ thống của tôi, nó cố gắng cài đặt php 5.5 cùng với nó.
starbeamrainbowlabs

Tôi đã nhận: CẢNH BÁO: Các gói sau không thể được xác thực! php-fantick Cài đặt các gói này mà không cần xác minh? [y / N] y Err ppa.launchpad.net/ondrej/php-7.0/ubfox tin cậy / chính php-fantick amd64 3.4.0 ~ rc6-1 + deb.sury.org ~ tin cậy + 2 404 Không tìm thấy E: Không thành công để tìm nạp ppa.launchpad.net/ondrej/php-7.0/ubfox/pool/main/p/php-imagick/ trộm 404 Không tìm thấy E: Không thể tìm nạp một số lưu trữ, có thể chạy cập nhật apt-get hoặc thử với --fix -còn thiếu?
mwm

3
Đã hoạt động nhưng tôi phải làm theo lời khuyên của @alexg để khởi động lại dịch vụ php7.0-fpm
xl-t

1
Bạn có thể cần chạy apt-get updateapt-get upgrade(hoặc apt-get dist-upgradetrước khi chạyapt-get install php-imagick
Leo Galleguillos

Đừng quên khởi động lại apache nếu PHP7 đang chạy như một mô-đun apache.
Hokascha

36

Hóa ra tôi phải khởi động lại fpm:

sudo service php7.0-fpm reload

Những điều tôi đã thử:

apt install php-imagickkhông làm việc cho tôi. Mô-đun đã được tải cho CLI PHP (Tôi đã kiểm tra php -m | grep -i imagicknhưng thông qua máy chủ web nginx của tôi, nó không hiển thị trong danh sách các mô-đun được báo cáo phpinfo().

Tôi thậm chí chèn extension=imagick.sovào /etc/php/7.0/fpm/php.inibằng tay, chỉ để chắc chắn.

Sau đó tôi đã thử thanh lọc php-imagickgói và cài đặt từ cpan:

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

Và vẫn, không có xì gà. Nó sẽ hoạt động thông qua cli nhưng không qua nginx.


Necromancer ở đây, xin lỗi, nhưng sau 30 phút, dòng của bạn đề cập đến việc khởi động lại dịch vụ php khiến tôi thực sự cảm thấy như mình nên đập đầu vào bức tường gạch ... :) Có bạn đoán vậy, tôi đã quên điều đó và tôi sẽ đi Tinh thần tại sao nó không hoạt động: D
Emil Borconi

@alexg vì chúng tôi không biên dịch hình ảnh nên có lý do gì để sử dụng -devgói của libmagickwand?
inckka

1
@inckka không, bạn sẽ ổn với gói nhị phân. Cảm ơn!
alexg

9

Đã cài đặt các gói này:

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

Bây giờ thay thế:

sudo service php7.0-fpm reload

Với:

sudo service apache2 restart

Công trình tuyệt vời


nó làm việc cho tôi
matinict

3

Bây giờ là năm 2018, chỉ muốn làm nổi bật, trong nhiều trường hợp, bạn cũng sẽ muốn cài đặt php-gd cùng với php-fantick (ví dụ nếu bạn đang cài đặt cái này cho wordpress).

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

Việc sử dụng php-fantick ngụ ý php7.2-fantick nếu 7.2 là phiên bản php của bạn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.