0 votos

imagick.so.so después de la actualización de brew + php.ini "imagick.so" en lugar de imagick.so

Hice un brew upgrade Tengo php 8.1 en osx 12.x

Imagick no funciona

PHP Warning:  PHP Startup: Unable to load dynamic library 'imagick.so' (tried: /usr/local/lib/php/pecl/20210902/imagick.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so' (no such file), '/usr/local/lib/imagick.so' (no such file), '/usr/lib/imagick.so' (no such file)), /usr/local/lib/php/pecl/20210902/imagick.so.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so.so' (no such file), '/usr/local/lib/imagick.so.so' (no such file), '/usr/lib/imagick.so.so' (no such file))) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library 'imagick.so' (tried: /usr/local/lib/php/pecl/20210902/imagick.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so' (no such file), '/usr/local/lib/imagick.so' (no such file), '/usr/lib/imagick.so' (no such file)), /usr/local/lib/php/pecl/20210902/imagick.so.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so.so' (no such file), '/usr/local/lib/imagick.so.so' (no such file), '/usr/lib/imagick.so.so' (no such file))) in Unknown on line 0
Configuration File (php.ini) Path: /usr/local/etc/php/8.1
Loaded Configuration File:         /usr/local/etc/php/8.1/php.ini
Scan for additional .ini files in: /usr/local/etc/php/8.1/conf.d
Additional .ini files parsed:      /usr/local/etc/php/8.1/conf.d/ext-opcache.ini

Mi opinión es que el error relevante es sobre /usr/local/lib/imagick.so.so y tengo un archivo /usr/local/lib/php/pecl/20210902/imagick.so que podría ser mejor para enlazar.

  • También me di cuenta de que dentro de mi php.ini Tengo extension="imagick.so" que he rebautizado como extension=imagick.so
  • si yo ls /usr/local/lib/php/pecl/20210902/ No obtengo ningún archivo ahora si ls /usr/local/lib/php/pecl/ luego usar el autocompletado para terminar 20210902 Me sale imagick.so

He intentado hacer un enlace simbólico en /usr/local/lib/ pero no funciona. ¿Cuál es la forma de resolver este tipo de errores?

intentó hacer un enlace simbólico sudo ln -s /usr/local/lib/php/pecl/20210902/imagick.so /usr/lib/imagick.so pero me sale operación no permitida

$ ls -l /usr/local/lib/php/pecl/20210902/imagick.so /usr/local/lib/imagick.so
ls: /usr/local/lib/php/pecl/20210902/imagick.so: No such file or directory
lrwxr-xr-x  1 user  admin  43 Dec  1 10:58 /usr/local/lib/imagick.so -> /usr/local/lib/php/pecl/20210902/imagick.so
$ ls -l /usr/local/lib/php/pecl/*/imagick.so
-rw-r--r--  1 ed  admin  438784 Jun 16 17:25 /usr/local/lib/php/pecl/20190902/imagick.so

Hice lo que @nohillside sugirió a continuación y aunque esto solucionó el problema creo que todavía hay un problema relacionado con el mismo problema

php --ini

PHP Warning:  PHP Startup: imagick: Unable to initialize module
Module compiled with module API=20190902
PHP    compiled with module API=20210902
These options need to match
 in Unknown on line 0

Intento de reinstalación por pecl uninstall imagick pero me da el mismo error

pecl uninstall imagick
PHP Warning:  PHP Startup: Unable to load dynamic library 'imagick.so' (tried: /usr/local/lib/php/pecl/20210902/imagick.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so, 0x0009): Library not loaded: /usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.10.dylib
  Referenced from: /usr/local/lib/php/pecl/20190902/imagick.so
  Reason: tried: '/usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file), '/usr/local/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file), '/usr/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file)), /usr/local/lib/php/pecl/20210902/imagick.so.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so.so' (no such file), '/usr/local/lib/imagick.so.so' (no such file), '/usr/lib/imagick.so.so' (no such file))) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library 'imagick.so' (tried: /usr/local/lib/php/pecl/20210902/imagick.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so, 0x0009): Library not loaded: /usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.10.dylib
  Referenced from: /usr/local/lib/php/pecl/20190902/imagick.so
  Reason: tried: '/usr/local/opt/imagemagick/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file), '/usr/local/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file), '/usr/lib/libMagickWand-7.Q16HDRI.10.dylib' (no such file)), /usr/local/lib/php/pecl/20210902/imagick.so.so (dlopen(/usr/local/lib/php/pecl/20210902/imagick.so.so, 0x0009): tried: '/usr/local/lib/php/pecl/20210902/imagick.so.so' (no such file), '/usr/local/lib/imagick.so.so' (no such file), '/usr/lib/imagick.so.so' (no such file))) in Unknown on line 0

si hago ls /usr/local/lib/php/pecl/ me salen dos versiones 20190902 20210902

0voto

Los detalles importan, 20210902 no es lo mismo que 20190902 :-)

Ejecutar

sudo rm /usr/local/lib/imagick.so
sudo ln -s /usr/local/lib/php/pecl/20190902/imagick.so /usr/local/lib/imagick.so
sudo chmod 644 /usr/local/lib/imagick.so

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X