AnsweredAssumed Answered

perl doesn't compile

Question asked by MarkBishop on Aug 28, 2012
Latest reply on Aug 29, 2012 by Aaronwu

opmini.c: In function ‘Perl_scalar’:

opmini.c:669: warning: unused variable ‘Perl___notused’

opmini.c:680: warning: unused variable ‘Perl___notused’

opmini.c: In function ‘Perl_list’:

opmini.c:983: warning: unused variable ‘Perl___notused’

opmini.c:993: warning: unused variable ‘Perl___notused’

bfin-linux-uclibc-gcc -mcpu=bf548-0.2 -o miniperl \

        miniperlmain.o opmini.o libperl.a -lnsl -ldl -lm -lcrypt -lutil -lc

libperl.a(util.o): In function `Perl_my_fork':

/home/mark/new_image/uclinux-dist-ipc/user/perl/util.c:2360: undefined reference to `_fork'

/home/mark/new_image/uclinux-dist-ipc/user/perl/util.c:2360: undefined reference to `_fork'

/home/mark/new_image/uclinux-dist-ipc/user/perl/util.c:2360: undefined reference to `_fork'

 

Using the 2011 version, but /user/perl hasn't been updated in three years.

 

Pid_t

Perl_my_fork(void)

{

#if defined(HAS_FORK)

    Pid_t pid;

#if (defined(USE_5005THREADS) || defined(USE_ITHREADS)) && !defined(HAS_PTHREAD_ATFORK)

    atfork_lock();

    pid = fork();

    atfork_unlock();

#else

    /* atfork_lock() and atfork_unlock() are installed as pthread_atfork()

     * handlers elsewhere in the code */

    pid = fork();                                                                                                    <<<<------------ Offending line.

#endif

    return pid;

#else

    /* this "canna happen" since nothing should be calling here if !HAS_FORK */

    Perl_croak_nocontext("fork() not available");

    return 0;

#endif /* HAS_FORK */

}

Outcomes