Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jacobmllr95/e17c225b7eb4baa9485ecec91b15477e to your computer and use it in GitHub Desktop.
Save jacobmllr95/e17c225b7eb4baa9485ecec91b15477e to your computer and use it in GitHub Desktop.
Install Imagick 3.4.3 on PHP 7.1 server (Laravel Forge)
#!/bin/bash
if [ "$EUID" -ne 0 ]
then echo "Please run as root"
exit
fi
apt-get install pkg-config libmagickwand-dev -y
cd /tmp
wget https://pecl.php.net/get/imagick-3.4.3.tgz
tar xvzf imagick-3.4.3.tgz
cd imagick-3.4.3
phpize
./configure
make install
rm -rf /tmp/imagick-3.4.3*
echo extension=imagick.so >> /etc/php/7.1/cli/php.ini
echo extension=imagick.so >> /etc/php/7.1/fpm/php.ini
service php7.1-fpm restart
service nginx restart
@igaster
Copy link

igaster commented Mar 13, 2017

Works perfect!
How to setup quickly:

wget https://gist.githubusercontent.com/jackmu95/e17c225b7eb4baa9485ecec91b15477e/raw/ccdf51f75941f33543947762516284fae7d245fe/imagick3.4.3-PHP7.1-forge.sh
sudo bash imagick3.4.3-PHP7.1-forge.sh

@TwilightDuck
Copy link

TwilightDuck commented Apr 6, 2017

I get the following when running this:

`----------------------------------------------------------------------
Libraries have been installed in:
   /tmp/imagick-3.4.3/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the '-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the 'LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the 'LD_RUN_PATH' environment variable
     during linking
   - use the '-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to '/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
Installing shared extensions:     /usr/lib/php/20160303/
Installing header files:          /usr/include/php/20160303/
sh: 0: getcwd() failed: No such file or directory
sh: 0: getcwd() failed: No such file or directory
`

Copy link

ghost commented Jul 6, 2017

RE:
sh: 0: getcwd() failed: No such file or directory
sh: 0: getcwd() failed: No such file or directory

getcwd gets the current working directory and if the directory is deleted or moved it will be unhappy!

@drfraker
Copy link

drfraker commented Sep 13, 2017

@NickJorens, I get the same error and imagick does not work. Were you able to figure out what was wrong?

I also get the following error when I run php -v: PHP Warning: Module 'imagick' already loaded in Unknown on line 0

--Update. Once I restarted the server everything was working. Not sure why or how, but try rebooting if you are having this problem.

@derekphilipau
Copy link

derekphilipau commented Nov 18, 2017

@drfraker, you might have the extension also enabled in /etc/php/7.1/mods-available/imagick.ini
restarting the php and nginx services didn't work for me either, like you i restarted the server and imagick started working
for phpize i had to sudo apt install php7.1-dev

@2Fwebd
Copy link

2Fwebd commented Jul 12, 2018

THANKS :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment