12
votes

I have trouble installing devisephp for laravel. I am working on the latest version of homestead with php7. when i do composer update i get the following error.

Problem 1
    - Installation request for devisephp/cms 1.4.* -> satisfiable by devisephp/cms[1.4.0].
    - devisephp/cms 1.4.0 requires ext-imagick * -> the requested PHP extension imagick is missing from your system.

After having this message i installed imagick on my homestead environment added the extension to php.ini in cli and fpm and checked in homestead if imagick is working with a test file. Everything was working perfectly but on running composer update i still get the same error message from above. Does anyone have a clue what the problem can be.

The stange thing is that is kan git clone devisephp its bootstrap version completely working including image handling but when i add another package to laravel i again get the above message.

4
SO php -v will output PHP 7.0.* and php -m | grep imagick will output imagick?Bogdan

4 Answers

22
votes

if you really can't install or don't want that extension to be validated you may skip it by supplying the

--ignore-platform-reqs

flag to your composer command

12
votes

Please follow these steps

  • sudo apt-get install php-imagick
  • php -m | grep imagick // this should print 'imagick' it means installed correctly
  • sudo service apache2 restart //(if needed)
0
votes

Try adding:

"ext-imagick": "*",

to your require block in your composer.json like so:

"license": "MIT",
"require": {
    "ext-imagick": "*",
    ....
}

and run composer update

0
votes

With the config.platform key in composer.js you can fake dependencies like php versions or extensions (you can't use an asterisk for the extension version, though!) https://getcomposer.org/doc/06-config.md#platform

As a bonus, you can polyfill ext-imagick with this library: https://github.com/calcinai/php-imagick. it's not complete and relies on the command line ImageMagick. So far it works for me.

{
    "require": {
        "calcinai/php-imagick": "dev-master"
    },
    "config": {
      "platform":{
        "ext-imagick": "3.4.4"
        }
    }
}