Debido a las bondades que encontré en este Framework de PHP, en cuanto a rendimiento, decidí instalarlo en mi servidor Debian para hacer pruebas y usarlo.
En este momento no existe un paquete oficial
actualizado . Asi que decidí hacer mis intentos y logré instalarlo con los siguientes pasos:
Características
Debian 7
PHP 5.4.39
A instalar Phalcon 2, tambien me funcionó para la versión 1.3.4.
Empecemos
Nota: ejecutar estos pasos en modo super usuario
Paso 1: Instalar los componentes necesarios
apt-get update
apt-get install gcc make libpcre3-dev php5-dev
Paso 2: Descargar el repositorio
git clone --depth=1 git://github.com/phalcon/cphalcon.git
Paso 3: Moverlo a la carpeta tmp
mv cphalcon /tmp
Paso 4: pararnos en la carpeta build
cd /tmp/cphalcon/build
Paso 5:Ejecutar el siguiente archivo
sh ./install
Paso 5.1: Si sale el siguiente error
not found2: ./install:
: not found16: ./install:
./install: 65: ./install: Syntax error: end of file unexpected (expecting "then")
o este
bad interpreter: No such file or directory
Paso 5.2: Hacer lo siguiente
touch install2
nano install2
Copiar el contenido de install y pegarlo en install2
Guardar
Paso 5.3
mv install2 install
Paso 5.4
sh ./install
Si sale el siguiente error "./install: line 64: phpize: command not found", es por que no ha instalado el componente "php5-dev".
En otro caso, debe aparecer lo siguiente:
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking whether the C compiler works... yes
....
Build complete.
Don't forget to run 'make test'.
Installing shared extensions: /usr/lib/php5/20100525/
Thanks for compiling Phalcon!
Build succeed: Please restart your web server to complete the installation
Paso 6: Habilitamos la extensión
cd /etc/php5/conf.d
Debería aparecer una lista de archivos así:
10-pdo.ini 20-gd.ini 20-mcrypt.ini 20-memcached.ini 20-mysqli.ini 20-mysql.ini
Paso 6.1: Creamos el archivo
touch 30-phalcon.ini
nano 30-phalcon.ini
Paso 6.2: Pegamos la siguiente información en el archivo 30-plancon.ini
extension=phalcon.so
Paso 6.3:Para evitar que se generen errores cuando ejecutemos una tarea por consola CLI
"PHP Fatal error: Class 'Phalcon\DI\FactoryDefault\CLI' not found" , movemos la extension a la carpeta cli de php,ejecutando el siguiente comando;
cd /etc/php5/apache2/conf.d && ls -lh
sudo mv ./30-phalcon.ini ../../mods-available/phalcon.ini
sudo ln -s ../../mods-available/phalcon.ini 30-phalcon.ini && cd ../../cli/conf.d/ && sudo ln -s ../../mods-available/phalcon.ini 30-phalcon.ini
Paso 6.4: Guardamos
Paso 7: Reiniciamos Apache
/etc/init.d/apache2 restart
Listo!
Ahora si hacemos un phpinfo, podemos ver la extensión instalada: