salve a tutti,
so che questo argomento è gia stato trattato ma non ne riesco a venire a capo
ho un problema nell'execlp di un file nella stessa directory che pero non va. chiarisco con codice:

>file es1.c<

#include <stdlib.h>
#include <signal.h>
#include <unistd.h>
#include <stdio.h>
#include <errno.h>

int
main (int argc, char *argv[])
{
int pid;

if((pid=fork())<0) perror("errore nella fork()");
if (pid == 0)
{
execl("./es1figlio.o","es1figlio.o", (char*)0);
printf("Errore execlp\n");
}

}
>end file es1.c<

lo compilo con gcc -o es1.o es1.c

>file es1figlio.c(nella stessa directory)<
int
main (int argc, char *argv[])
{
printf("\nHello\n");
}
>end file es1figlio.c<
lo compilo con gcc -o es1figlio.o es1figlio.c


S.O. usato ubuntu 8.04

all'esecuzione di
./es1.o

ottengo
"Errore execlp"

overo l'exec non va buon fine.Mi aiutate a capire dove sbaglio?
grazie.