<!--
-File $Id: Installation.html,v 1.8 2004/11/04 01:46:06 hlellelid Exp $
-License GNU FDL (http://www.gnu.org/copyleft/fdl.html)
-Copyright 2002, Propel project
-Author Hans Lellelid, hide@address.com
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Guí Propel</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="Stylesheet" rev="Stylesheet" href="../css/Documentation.css" type="text/css" media="All" charset="iso-8859-1" />
</head>
<body>
<h1>Instalación</h1>
<h2><a name="Installation.Prerequisites"></a>Prerrequisitos</h2>
<p>En orden de instalar Propel usted necesita:</p>
<ul>
<li> PHP >= 5.0.0 con soporte XSLT (--con-xsl en *nix, o habilitada la librería php_xsl.dll
en Windows)</li>
<li>Soporte RDBMS (MySQL, MS SQL Server, PostgreSQL, SQLite, Oracle)</li>
<li><a href="Bibliography.html#bib.phing">Phing 2.0</a></li>
<li><a href="Bibliography.html#bib.creole">Creole</a> >= 1.0.0</li>
<li>El paquete PEAR Log(opcional)</li>
</ul>
<p>Propel puede ser usado en ambas plataformas Unix y Windows.</p>
<p>Propel está disponible en formato "tradicional" tarball y desde la version
1.0.0 está también disponible como in paquete instalable PEAR. La opción tarball da
más flexibilidad, pero es más es más difícil de instalar. La opción PEAR es perfecta
si desea tomarlo y hacerlo funcionar rapidamente, pero es más "magico"
y desde aquí curva de aprendizaje para personalizaciones es más paso a paso.</p>
<h2><a name="Installation.PEAR"></a>Instalación PEAR </h2>
<p>Ahora es posible instalar ambos el generador Propel y el ejecutor de componentes
como paquetes PEAR. Esta es lejanamente la forma más fácil de poner a correr Propel, pero
puede no ser completamente tan fácil de configurar como con la instalación tradicional. Estos
paquetes actualmente no dependen uno del otro, por ello usted puede instalar sólo el generador
o sólo el ejecutor de clases. Note que el ejecutor de clases depende del
paquete Creole. </p>
<h3>Generador</h3>
<pre title="pear install generator">
$> instalación pear http://propel.phpdb.org/pear/propel_generator-current.tgz</pre>
<p>El paquete generador viene con un conveniente script propel-gen shell el cual
actualmente puede usar para automaticamente construir el proyecto.
<pre title="pear run propel-gen">
$> propel-gen /dirección/de/su/directorio/proyecto [objetivo]</pre>
<p> Como puede ver en el ejemplo, usted debe crear un directorio proyecto. Usted puede
hechar un vistazo al ejemplo provisto <em>bookstore</em> directorio del proyecto (en su
directorio de datos PEAR). Este tópico está también cubierto con más detalle en el siguiente
capitulo, <a href="GettingStarted.html">Iniciandose</a>. </p>
<h3>Runtime</h3>
<p>Las clases de ejecución son instaladas de la misma manera como las clases generador.</p>
<pre title="pear install runtime">
$> pear install http://propel.phpdb.org/pear/propel_runtime-current.tgz</pre>
<p>Configuraciones nuevas no son necesarias (asumiendo que su directorio PEAR php este
en su <em>include_path</em>).</p>
<p><strong>Lo ha hecho.</strong> leyendo la instalación tradicional es probablemente
una buena idea de cualquier forma, especialmente como la mayoría de los ejemplos fueron escritos para propel instalado
de la forma tradicional.</p>
<h2><a name="Installation.Conventional"></a>Instalación conventional </h2>
<p>Con el fin de simplificar este capitulo haremos algunas suposiciones acerca de la localización
de los archivos. Asumiremos que su inmstalación probablemente difiera, entonces estos deverían servir sólo
como una referencia para las siguientes instrucciones</p>
<table>
<caption>
Algunas suposiciones para simplificar el ejemplo
</caption>
<thead>
<tr>
<th>ruta </th>
<th>Unix (Linux, FreeBSD, etc.)</th>
<th>Windows</th>
</tr>
<tr>
<td>ejecutor Propel</td>
<td>/usr/local/propel/runtime</td>
<td>C:\PHP\apps\propel\runtime</td>
</tr>
</thead>
<tbody>
<tr>
<td>generador Propel</td>
<td>/usr/local/propel/generator</td>
<td>C:\PHP\apps\propel\generator</td>
</tr>
<tr>
<td>librerías PEAR</td>
<td>/usr/local/lib/php</td>
<td>C:\PHP\PEAR </td>
</tr>
</tbody>
</table>
<h3>Obtención</h3>
<p>Usted puede instalar Propel desde un paquete liberado (distribución imagen) o
desde un CVS. Instalando desde una liberación o imagen siempre sera más simple, pero
si quiere mantener y (esperamos que sea asi!) ayudar a los desarrolladores de Propel,
entonces debería revisar una copia de las funetes desde un CVS.</p>
<h4>Paquete</h4>
<p>Si usted obtiene un tar.gz o .zip de Propel, entonces simplemente descomprima
el archivo y mueva la carpeta resultante a la posición correcta. Por ejemplo:</p>
<pre title="unix unpacking">
$> cd /usr/local
$> tar zxvf propel-x.x.x.tar.gz
$> ln -s propel-x.x.x propel
</pre>
<h4>CVS</h4>
<p>Instalando desde un CVS lo asegura de tener el código fuente más actualizado.
(desde luego el código desde CVS no es estable y no debería ser utilizado en producción.) </p>
<p>Nota: el modulo <em>propel</em> en CVS tiene una lijera diferencia estructura
de directorios debido a consideraciones legales y limitaciones impuestas por tigris.org.
Notablemente, todos los "modulos" se encuentran actualmente en un nivel alto de directorios <tt>propel;</tt>
también las clases de ejecución estan en los subdirectorios de <tt>propel</tt>,
mientras el componente generados está en el directorio <tt>generador-propel</tt>.
Revise el siguiente ejemplo (Unix) usando las suposiciones de ruta que definimos
a continuación:</p>
<pre title="CVS checkout instructions">
$> cvs -d :pserver:hide@address.com:/cvs login
Password: [guest]
$> cvs -d :pserver:hide@address.com:/cvs checkout propel
$> mkdir /usr/local/propel
$> mv propel/propel /usr/local/propel/runtime
$> mv propel/propel-generator /usr/local/propel/generator</pre>
<p> Para los usuarios de Windows, hay un número gráfico de clientes CVS disponibles como
el muy capaz y fácil de usar<a href="http://www.tortoisecvs.org" target="_blank">TortoiseCVS</a>.</p>
<h3>Ambiente de instalación</h3>
<p>Una vez ha desempacado su distribución Propel, necesitara configurar su
ambiente PHP.</p>
<h4>PHP include_path</h4>
<p>Necesita adicionar el directorio <tt>propel/runtime/classes</tt> a su PHP include
path. Note que usted solamente necesita adicionar las clases de <em>ejecución</em> a su <em>include_path</em>,
como el proceso de construcción calcula el <em>include_path</em> para el generador
de clases automaticamente. En ese orden de palabras, este paso no es requarido para construir su
modelo de objeto, pero es requerido actualmente usa su código generado desde un
script PHP. El camino má fácil y más permanente de ajustar su <em>include_path</em>
es simplemente modificando su archivo <tt>php.ini</tt> y adicionando este directorio a la variable <em>include_path :</em>
</p>
<pre title="php.ini settings">
# Unix
include_path="/usr/local/lib/php:/usr/local/propel/classes"
; Windows
include_path="C:\PHP\PEAR;C:\PHP\apps\propel\classes"
</pre>
<p>Si no posee permisos sobre el archivo <tt>php.ini</tt> y no puede especificar el valor <em>include_path</em>
en su archivo <tt>.htaccess</tt> usted siempre podra hacer esto al ejecutor mediante scripts PHP:</p>
<pre title="setting include_path at runtime">
<?php
set_include_path("/usr/local/propel/runtime/classes:" . get_include_path());
require_once 'propel/Propel.php';
Propel::init( MY_CONF_DIR . '/propel/runtime-conf.php');</pre>
<p>Ahora el ambiente de ejecución de Propel esta listo para ser usado en su modelo objeto.
como aprendera en las subsecuentes secciones, también necesitara el <em>include_path
</em>para account para su modelo de objeto de clases PHP ( ej. las clases que el
generador de propel construye para usted).</p>
<h4>Otras recomendaciones de la variable INI</h4>
<p>También debería revisar que los siguientes ajustes PHP INI settings sean corectos:</p>
<table>
<caption>
ajuste de variables php.ini
</caption>
<thead>
<tr>
<th>Variable</th>
<th>Valor</th>
</tr>
</thead>
<tbody>
<tr>
<td>ze1_compatibility_mode</td>
<td>Off</td>
</tr>
<tr>
<td><p>magic_quotes_gpc</p></td>
<td><p>Off</p></td>
</tr>
<tr>
<td><p>magic_quotes_sybase</p></td>
<td><p>Off</p></td>
</tr>
<tr>
<td><p>register_globals</p></td>
<td> <p>Off (esto actualmente no afecta a Propel, pero es importante
anotar que en Propel no necesita estar activo 'On') </p></td>
</tr>
</tbody>
</table>
<p>Estos deben ser los valores por defecto para estas opciones. También, no hay requerimientos
que <em>registros globales</em> sean puestos en 'off', pero es una buena idea -- e importante,
Propel no requiere que este en 'on'.</p>
<p>Hasta este punto debería terminar la instalación y ajuste de Propel. Para estar seguro
de que todo funciona bien, continue con el capitulo <a href="GettingStarted.html">Iniciándose/a>para caminar a través de ejmplos.</p>
</body>
</html>