วิธีการติดตั้ง 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ฉันคิดว่ามันเป็นเพียง
Terrance

สามารถยืนยันได้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 หรือลองด้วย - แก้ไข -missing?
mwm

3
ทำงานได้ แต่ฉันต้องปฏิบัติตามคำแนะนำ @alexg เพื่อเริ่มบริการ php7.0-fpm อีกครั้ง
xl-t

1
คุณอาจต้องวิ่งapt-get updateและapt-get upgrade(หรือapt-get dist-upgradeก่อนที่จะวิ่งapt-get install php-imagick
Leo Galleguillos

อย่าลืมรีสตาร์ท apache หาก PHP7 ทำงานเป็นโมดูล apache
Hokascha

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
Emil Borconi

@alexg ตั้งแต่เรายังไม่ได้รวบรวม ImageMagick มีเหตุผลใด ๆ ที่ใช้-devแพคเกจของlibmagickwand?
inckka

1
@ inckka ไม่คุณควรจะตกลงกับแพ็คเกจไบนารี ขอบคุณ!
alexg

9

ติดตั้งแพ็คเกจเหล่านี้:

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

ตอนนี้แทนที่:

sudo service php7.0-fpm reload

ด้วย:

sudo service apache2 restart

ใช้งานได้ดี


มันทำงานให้ฉัน
matinict

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 ของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.