• Publicidad

ERROR: Couldn't spawn child process

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

ERROR: Couldn't spawn child process

Notapor diego_el_38 » 2005-06-07 16:48 @741

Hola, alguien me puede decir qué significa el siguiente error:
couldn't spawn child process:
que se me genera en el error log cuando intento ejecutar un archivo cgi.
Desde ya muchas gracias
saludos
diego
diego_el_38
Perlero nuevo
Perlero nuevo
 
Mensajes: 11
Registrado: 2005-05-29 09:58 @457

Publicidad

Notapor kidd » 2005-06-07 18:38 @818

Hola:

Revisa que la primera línea de tu script tenga la ruta correcta a Perl. Recuerda que si estas en Windows la línea debe de decir algo como #!c:\perl\bin\perl.exe, pero en UNIX es diferente, podría ser algo así #!/usr/bin/perl

Si eso no funciona intenta cambiar la extensión de tu script de .cgi a .pl o viceversa.

NOTA: Si sigues con problemas podrías decirnos en que SO estás intentando ejecutar tu script, y quizá mostrar el código fuente.

SALUDOS
Uriel Lizama Perl programmer fundador de Perl en Español
Perl Programming Language
Avatar de Usuario
kidd
Creador de Perl en Español
Creador de Perl en Español
 
Mensajes: 1166
Registrado: 2003-10-15 16:52 @744
Ubicación: México

sí funcionó

Notapor lnx_hg » 2008-02-08 12:56 @580

Gracias, hee, de verdad funcionó; no soy un experto en esto de Perl, pero ¿qué tiene que ver la ruta si según yo está comentada y el compilador no la toma en cuenta? Pero en fin, gracias :?: :D
lnx_hg
Perlero nuevo
Perlero nuevo
 
Mensajes: 54
Registrado: 2007-08-13 12:52 @578

Notapor explorer » 2008-02-08 13:13 @593

Efectivamente, para Perl, es una línea de comentario.

Pero para el sistema operativo sí que tiene significado.

No para Windows, que se fía más del contenido del Registro, en donde buscará las asociaciones de tipos de fichero con la aplicación que debe ser lanzada con ellos, pero sí para Linux/Unix, donde esa línea (la shebang) indica dónde está la aplicación o ejecutable que debe procesar lo que sigue.

En resumen, que si no pones esa línea, en Linux/Unix, estarás obligado a ejecutar tu programa así:
Código: Seleccionar todo
perl programa.pl

Si la pones, entonces podrás hacerlo así:
Código: Seleccionar todo
programa.pl
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Jenda » 2008-02-09 10:51 @494

Esa línea no es solo un comentario. Sí que Perl no la ejecuta como una sentencia normal, pero no la ignora tampoco. Perl lee esta línea y busca por las opciones como -w.

Así que si ejecutas en Windows un programa que contiene
#!/usr/bin/perl -w
cómo la primera línea, vas a obtener los warnings. Y no importa si lo ejecutas como
Código: Seleccionar todo
escript.pl
perl escript.pl
perl -w escript.pl


De segundo, el Windows o MS Internet Information Server no da cuenta de ninguna línea así, lo único que les importa es la extensión del fichero. Por otro lado si usas Apache, tienes que tener esa línea allí y ella tiene que contener la correcta ruta a perl.exe.
-------------------------------------------------------
- Estoy aquí para practicar español. Si te ayudó mi respuesta ayudame con un mensaje privado sobre mis faltas por favor. Seguramente habrá muchas :-)
Jenda
Perlero nuevo
Perlero nuevo
 
Mensajes: 132
Registrado: 2007-10-29 06:31 @313
Ubicación: Praga, Republica Checa


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados