21 votos

PEAR en Windows: Cómo cambiar la ubicación de pear.ini

Estoy tratando de instalar un paquete PEAR en mi reciente XAMPP instalación de PHP (PHP 5.3.1) en Windows 7 de 64 bits.

La instalación de nuevos paquetes de falla debido a la PEAR intenta acceder a c:\windows\pear.ini en lugar de la existente c:\path_to_xampp\php\pear.ini. Los resultados de esto (y con razón) en un permission denied de error. He iniciado sesión como Administrador, pero el directorio de Windows goza de cierta protección adicional IIRC.

En lugar de jugar con los derechos de escritura en el directorio de windows, me gustaría hacer uso de la pera.en el archivo ini.

¿Alguien sabe donde cambiar la PEAR del comportamiento en consecuencia?

25voto

VolkerK Puntos 54118

No del todo seguro, pero PEAR registrado las siguientes claves en el registro de mi máquina

REGEDIT4
[HKEY_CURRENT_USER\Environment]
"PHP_PEAR_SYSCONF_DIR"="D:\\webserver\\xampp\\php"
....

Y PEAR/Config.php contiene el siguiente fragmento de código:

if (getenv('PHP_PEAR_SYSCONF_DIR')) {
    define('PEAR_CONFIG_SYSCONFDIR', getenv('PHP_PEAR_SYSCONF_DIR'));

y el constructor de la clase Config

function PEAR_Config($user_file = '', $system_file = '', $ftp_file = false,
                         $strict = true)
    {
        $this->PEAR();
        PEAR_Installer_Role::initializeConfig($this);
        $sl = DIRECTORY_SEPARATOR;
        if (empty($user_file)) {
            if (OS_WINDOWS) {
                $user_file = PEAR_CONFIG_SYSCONFDIR . $sl . 'pear.ini';
            } else {
                $user_file = getenv('HOME') . $sl . '.pearrc';
            }
        }

$user_file = PEAR_CONFIG_SYSCONFDIR . $sl . 'pear.ini'; parece ser la línea que hace de "mi" PEAR de instalación utilice el archivo D:\webserver\xampp\php\pear.ini.
Si eso es correcto todo lo que tienes que hacer es de alguna manera establecer la variable de entorno PEAR_CONFIG_SYSCONFDIR

10voto

user421812 Puntos 101

Otra forma es modificar el entorno del sistema windows y agregar variable PHP_PEAR_SYSCONF_DIR apunta de php dir.

3voto

user2204085 Puntos 11

Para cambiar el camino de c:\windows\pear.ini a c:\path_to_xampp\php\pear.ini puedes descargar este archivo en http://pear.php.net/go-pear.phar y colóquelo en su c:\path_to_xampp\phpcarpeta. Ejecutar:

php go-pear.phar

Cambiar la ubicación de la pera.ini (11) a c:\path_to_xampp\php ($prefix\pear.ini). Guarde y ejecute el nuevo archivo c:\path_to_xampp\php\PEAR_ENV.reg. Cerrar la sesión de Windows y ejecutar (en c:\path_to_xampp\php)

pera config-show

Ahora usted puede ver que el camino ha sido actualizado :)

0voto

Tudisco Puntos 101

En windows 7 usar powershell.

puede establecer la variable PHP_PEAR_SYSCONF_DIR y luego ejecutar un comando de pera. Por ejemplo:

$env:PEAR_CONFIG_SYSCONFDIR = 'c:\path_to_xampp\php'
pear install pear.phpunit.de/PHPUnit

0voto

Unsigned Puntos 3312

Enlazan a mi respuesta a una pregunta muy similar aquí, ya que es relevante y (a diferencia de la respuesta de VolkerK) trabaja con múltiples instalaciones de pera sin temor de ambiente interfieran.

http://stackoverflow.com/a/10307450/629493

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X