Mac Os X 10.10 Yosemite viene con una instalación Apache+MySQL+PHP. Así que muchos optamos por distintas soluciones. Bien reinstalar y adaptar nuestro sistema con Homebrew, MacPorts, MAMP o mi preferido AMPPS ya que lo compatibilizo con los servidores a través de Softaculous, lo cual complica la instalación de Laravel 4.2
Contenidos
Al intentar instalar Laravel 4.2 con composer en una versión antigua, la 4.2, obtuve un error, ya que el fichero composer funciona usando la variable de entorno env
#!/usr/bin/env php
Esto fuerza a usar el PHP de Yosemite, pero en el caso de que usemos por ejemplo AMPPS, nos arrojara errores, ya que no tendrá las extensiones de nuestro PHP de desarrollo.
composer create-project laravel/laravel proyecto4.2 4.2 --prefer-dist
Installing laravel/laravel (v4.2.0)
- Installing laravel/laravel (v4.2.0)
Loading from cache
Created project in mejorandolaravel2
Loading composer repositories with package information
Installing dependencies (including require-dev)
...
...
Mcrypt PHP extension required.
Script php artisan clear-compiled handling the post-install-cmd event returned with an error
[RuntimeException]
Error Output:
Tras intentar modificar el fichero composer para que use nuestro php cambiando la variable de entorno #!/usr/bin/env php por nuestro path
#!/usr/bin/env php
Obtenemos nuevos errores
composer create-project laravel/laravel mejorandolaravel 4.2 --prefer-dist
PHP Fatal error: Uncaught exception 'PharException' with message 'phar "/usr/local/bin/composer" has a broken signature' in /usr/local/bin/composer:23
Stack trace:
#0 /usr/local/bin/composer(23): Phar::mapPhar('composer.phar')
#1 {main}
thrown in /usr/local/bin/composer on line 23
Fatal error: Uncaught exception 'PharException' with message 'phar "/usr/local/bin/composer" has a broken signature' in /usr/local/bin/composer:23
Stack trace:
#0 /usr/local/bin/composer(23): Phar::mapPhar('composer.phar')
#1 {main}
thrown in /usr/local/bin/composer on line 23
Tras varios intentos según distintos documentos encontrados el problema persistía, y lo que era una fácil instalación de Laravel 5, paso a una difícil instalación de Laravel 4.2.
La solución más rápida que encontramos y la menos intrusiva fue el cambio del binario, por un enlace simbólico a la versión que usamos de AMPPS en nuestro caso la 5.4 ya que el desarrollo que estamos trabajando usa esa versión.
$sudo su -
Password:
cd /usr/bin; mv php php.original; ln -s /Applications/AMPPS/php-5.4/bin/php
Debemos instalar o activar la extensión tokenizer.so
Use of undefined constant T_DOUBLE_COLON - assumed 'T_DOUBLE_COLON'
Script php artisan optimize handling the post-install-cmd event returned with an error
[RuntimeException]
Error Output:
[ErrorException]
Use of undefined constant T_DOUBLE_COLON - assumed 'T_DOUBLE_COLON'
optimize [--force] [--psr]
Debemos instalar o activar la extensión ctype.so
cript php artisan optimize handling the post-install-cmd event returned with an error
[RuntimeException]
Error Output: PHP Fatal error: Call to undefined function ctype_digit() in /path_instalacion/vendor/nikic/php-parser/lib/PHPParser/PrettyPrinter/Default.php on line 88
Comparte este artículo
Comparte este articulo en
¡Hola a todos! Vamos a sumergirnos en el fascinante mundo de Mod Security y aprender…
Ya son muchos años en el sector, muchos años pasando por varios paneles de control,…
La lista UCEPROTECT es una herramienta utilizada por muchos administradores de sistemas y proveedores de…
No es la primera vez que me encuentro con el agotamiento de la memoria en…
Descubre cómo solucionar problemas de acceso a servidores con Centos 7, Almalinux 8, Ubuntu 20.04…
Uno de los mensajes más alarmantes que puedes encontrarte es aquel que indica que tu…