¿Por qué mi Perl personalizado no se instala en el directorio esperado?

Seguí las instrucciones en este tutorial para crear una versión personalizada de Perl.

Originalmente hice el paso 8 de la siguiente manera:

./Configure -d -Dprefix=/custom/perl

Después de hacer eso, hice make, make testy make install.

Entonces decidí que quiero Perl en /opt/perl en su lugar, así que lo hice make clean y repitió el proceso e hizo el paso 8 con el directorio apropiado. Todavía instalado en /custom. Luego eliminé la costumbre por completo y la reinstalé con el directorio apropiado en el ./Configure paso. Todavía instalado en /custom.

¿Qué me estoy perdiendo? Quiero Perl en /opt not /custom.

preguntado el 22 de mayo de 12 a las 18:05

Eso funcionaria. make distclean de hecho elimina config.sh y Policy.sh. -

2 Respuestas

Tiene el uso correcto para 5.16, según su INSTALL archivo: "También puede especificar cualquier ubicación de prefijo agregando"-Dprefix='/some/dir'"A Configureargumentos de ".

Entonces sospecho que make clean no elimina los archivos creados por Configure. Pruébelo desde un directorio nuevo en lugar de un directorio "limpio". O al menos intenta borrar config.sh y Policy.sh.

[Upd: Se señaló que make distclean se puede usar para hacer esto. Por supuesto, también puede git clean -dfx si está instalando desde el repositorio en lugar de desde el tarball. ]

contestado el 22 de mayo de 12 a las 18:05

Por "fresco", ikegami significa eliminar todo el directorio de compilación y extraer uno nuevo de su .zip/tarball;) - CódigoClown42

@goldilocks, Eso es lo que significa fresco, aunque he agregado que creo que todo lo que se necesita es eliminar los dos archivos creados por Configure. - Ikegami

se parece a mi configure.sh todavía tenía casos de /custom en eso. Lo eliminó junto con Policy.sh y reiniciando el proceso. Parece que está funcionando... Te lo haré saber en un minuto. - alexbaron

No sé por qué argumentos de línea de comando para Configure no anule la configuración seleccionada previamente, pero tuve un problema similar al intentar crear una compilación con subprocesos (-Dusethreads) después de construir uno sin rosca. Es posible que desee comprobar el excelente perlbrew si desea tener varias compilaciones de Perl. - Ikegami

/opt/perl/bin/perl -e 'imprime "hola mundo\n";' Hola Mundo - alexbaron

La -d opción de ./Configure hace que el proceso de compilación obtenga su fuente existente config.sh archivo. los -Dprefix=... opción anulará la prefix ajuste en su existente config.sh, pero desafortunadamente no anulará una serie de otras opciones que podrían establecerse en config.sh basado en una configuración anterior para prefix.

Además de nuestras localidaded en make clean, también necesitas rm config.sh para reutilizar de forma segura un directorio de compilación de perl.

Si tiene la intención de copiar la configuración de su proceso de compilación a otra máquina, también querrá limpiar Policy.sh.

contestado el 22 de mayo de 12 a las 19:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.