undefined reference to `pthread_getspecific' and error during sh Configure trying to compile perl-5.30.1
by mustang2049 from LinuxQuestions.org on (#51PQK)
Hello.
I am currently having problems compiling perl-5.30.1. When trying to compile it according to the LFS book (version 9.1), I get the following error (the whole log for the make command is shown):
Code:echo @`sh cflags "optimize='-O2'" opmini.o` -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB opmini.c
@cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB opmini.c
echo @`sh cflags "optimize='-O2'" perlmini.o` -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB perlmini.c
@cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB perlmini.c
In file included from perl.c:37:
perl.c: In function 'Perl_sys_init':
perl.h:2688:51: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2688 | # define PERL_FPU_INIT PL_sigfpe_saved = (Sighandler_t) signal(SIGFPE, SIG_IGN)
| ^
unixish.h:150:29: note: in expansion of macro 'PERL_FPU_INIT'
150 | MALLOC_CHECK_TAINT2(*c,*v) PERL_FPU_INIT; PERLIO_INIT; MALLOC_INIT
| ^~~~~~~~~~~~~
perl.c:125:5: note: in expansion of macro 'PERL_SYS_INIT_BODY'
125 | PERL_SYS_INIT_BODY(argc, argv);
| ^~~~~~~~~~~~~~~~~~
perl.c: In function 'Perl_sys_init3':
perl.h:2688:51: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2688 | # define PERL_FPU_INIT PL_sigfpe_saved = (Sighandler_t) signal(SIGFPE, SIG_IGN)
| ^
unixish.h:150:29: note: in expansion of macro 'PERL_FPU_INIT'
150 | MALLOC_CHECK_TAINT2(*c,*v) PERL_FPU_INIT; PERLIO_INIT; MALLOC_INIT
| ^~~~~~~~~~~~~
perl.h:2738:49: note: in expansion of macro 'PERL_SYS_INIT_BODY'
2738 | # define PERL_SYS_INIT3_BODY(argvp,argcp,envp) PERL_SYS_INIT_BODY(argvp,argcp)
| ^~~~~~~~~~~~~~~~~~
perl.c:138:5: note: in expansion of macro 'PERL_SYS_INIT3_BODY'
138 | PERL_SYS_INIT3_BODY(argc, argv, env);
| ^~~~~~~~~~~~~~~~~~~
perl.c: In function 'S_parse_body':
perl.c:2399:22: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2399 | if (sigstate == (Sighandler_t) SIG_IGN) {
| ^
In file included from perl.h:5359,
from perl.c:37:
perl.c:2402:26: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2402 | (void)rsignal(SIGCHLD, (Sighandler_t)SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings gv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings toke.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perly.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pad.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings regcomp.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings dump.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings util.c
util.c: In function 'Perl_rsignal':
util.c:2695:9: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2695 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2698:22: warning: cast between incompatible function types from 'Sighandler_t' {aka 'void (*)(int, struct <anonymous> *, void *)'} to 'void (*)(int)' [-Wcast-function-type]
2698 | act.sa_handler = (void(*)(int))handler;
| ^
util.c:2706:40: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2706 | if (signo == SIGCHLD && handler == (Sighandler_t) SIG_IGN)
| ^
util.c:2710:13: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2710 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2712:13: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2712 | return (Sighandler_t) oact.sa_handler;
| ^
util.c: In function 'Perl_rsignal_state':
util.c:2722:9: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2722 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2724:9: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2724 | return (Sighandler_t) oact.sa_handler;
| ^
util.c: In function 'Perl_rsignal_save':
util.c:2743:22: warning: cast between incompatible function types from 'Sighandler_t' {aka 'void (*)(int, struct <anonymous> *, void *)'} to 'void (*)(int)' [-Wcast-function-type]
2743 | act.sa_handler = (void(*)(int))handler;
| ^
util.c:2751:40: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2751 | if (signo == SIGCHLD && handler == (Sighandler_t) SIG_IGN)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mg.c
mg.c: In function 'Perl_magic_getsig':
mg.c:1465:25: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1465 | if(sigstate == (Sighandler_t) SIG_IGN)
| ^
In file included from perl.h:5359,
from mg.c:43:
mg.c: In function 'Perl_magic_setsig':
mg.c:1742:20: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1742 | (void)rsignal(i, (Sighandler_t) SIG_IGN);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
mg.c:1752:20: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1752 | (void)rsignal(i, (Sighandler_t) SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings reentr.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mro_core.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings keywords.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings hv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings av.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings run.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_hot.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings sv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings scope.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_ctl.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_sys.c
In file included from perl.h:5359,
from pp_sys.c:31:
pp_sys.c: In function 'Perl_pp_system':
pp_sys.c:4421:28: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
4421 | rsignal_save(SIGINT, (Sighandler_t) SIG_IGN, &ihand);
| ^
embed.h:1560:55: note: in definition of macro 'rsignal_save'
1560 | #define rsignal_save(a,b,c) Perl_rsignal_save(aTHX_ a,b,c)
| ^
pp_sys.c:4422:28: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
4422 | rsignal_save(SIGQUIT, (Sighandler_t) SIG_IGN, &qhand);
| ^
embed.h:1560:55: note: in definition of macro 'rsignal_save'
1560 | #define rsignal_save(a,b,c) Perl_rsignal_save(aTHX_ a,b,c)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings doop.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings doio.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings regexec.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings utf8.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings taint.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings deb.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings universal.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings globals.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perlio.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perlapi.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings numeric.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mathoms.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings locale.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_pack.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_sort.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings caretx.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings dquote.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings time64.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings miniperlmain.c
In file included from perl.h:5359,
from miniperlmain.c:57:
miniperlmain.c: In function 'main':
miniperlmain.c:139:29: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
139 | rsignal(PL_sig_num[i], (Sighandler_t) SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -fstack-protector-strong -o miniperl \
opmini.o perlmini.o gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro_core.o keywords.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o caretx.o dquote.o time64.o miniperlmain.o -lm /tools/lib/libcrypt.a
/usr/bin/ld: opmini.o: in function `Perl_op_sibling_splice':
opmini.c:(.text+0x586c): undefined reference to `pthread_getspecific'
/usr/bin/ld: opmini.o: in function `Perl_load_module_nocontext':
opmini.c:(.text+0x1ff25): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlmini.o: in function `perl_alloc':
perlmini.c:(.text+0x653): undefined reference to `pthread_setspecific'
/usr/bin/ld: perlmini.c:(.text+0x687): undefined reference to `pthread_key_create'
/usr/bin/ld: perlmini.c:(.text+0x69d): undefined reference to `pthread_setspecific'
/usr/bin/ld: perlmini.o: in function `perl_fini':
perlmini.c:(.text.exit+0x1c): undefined reference to `pthread_key_delete'
/usr/bin/ld: regcomp.o: in function `S_delete_recursion_entry':
regcomp.c:(.text+0x13cc): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x141b): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.o: in function `Perl_parse_uniprop_string':
regcomp.c:(.text+0x1605d): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x160b4): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x166b8): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.o:regcomp.c:(.text+0x1671e): more undefined references to `pthread_setspecific' follow
/usr/bin/ld: mg.o: in function `Perl_csighandler':
mg.c:(.text+0x22cb): undefined reference to `pthread_getspecific'
/usr/bin/ld: mg.o: in function `Perl_sighandler':
mg.c:(.text+0x654a): undefined reference to `pthread_getspecific'
/usr/bin/ld: pp_hot.o: in function `Perl_croak_caller':
pp_hot.c:(.text+0xa0e8): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `S_croak_overflow':
sv.c:(.text+0x35b): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_clone_params_del':
sv.c:(.text+0x3502): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.c:(.text+0x3518): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.c:(.text+0x355f): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_catpvf_nocontext':
sv.c:(.text+0x8098): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_catpvf_mg_nocontext':
sv.c:(.text+0x8198): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_newSVpvf_nocontext':
sv.c:(.text+0x85f6): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_clone_params_new':
sv.c:(.text+0xc547): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.c:(.text+0xc55d): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.c:(.text+0xc5ba): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `perl_clone':
sv.c:(.text+0x18462): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_setpvf_nocontext':
sv.c:(.text+0x1ba36): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_setpvf_mg_nocontext':
sv.c:(.text+0x1bc36): undefined reference to `pthread_getspecific'
/usr/bin/ld: pp.o: in function `S_find_runcv_name':
pp.c:(.text+0x96c): undefined reference to `pthread_getspecific'
/usr/bin/ld: universal.o: in function `Perl_croak_xs_usage':
universal.c:(.text+0x134a): undefined reference to `pthread_getspecific'
/usr/bin/ld: locale.o: in function `S_emulate_setlocale':
locale.c:(.text+0x20): undefined reference to `pthread_getspecific'
/usr/bin/ld: locale.o:locale.c:(.text+0x897): more undefined references to `pthread_getspecific' follow
/usr/bin/ld: util.o: in function `Perl_set_context':
util.c:(.text+0x3a4e): undefined reference to `pthread_setspecific'
/usr/bin/ld: util.o: in function `Perl_xs_handshake':
util.c:(.text+0x70ec): undefined reference to `pthread_getspecific'
/usr/bin/ld: util.o: in function `Perl_get_context':
util.c:(.text+0x3a37): undefined reference to `pthread_getspecific'
/usr/bin/ld: reentr.o: in function `Perl_reentrant_retry':
reentr.c:(.text+0x5b): undefined reference to `pthread_getspecific'
/usr/bin/ld: utf8.o: in function `Perl__utf8n_to_uvchr_msgs_helper':
utf8.c:(.text+0x19d5): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlio.o: in function `PerlIO_debug':
perlio.c:(.text+0x91b): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlio.o:perlio.c:(.text+0x44e4): more undefined references to `pthread_getspecific' follow
collect2: error: ld returned 1 exit status
make: *** [makefile:364: lib/buildcustomize.pl] Error 1While doing a sh Configure command for perl, I also got this error:
Code:(lfs chroot) root:/sources/perl-5.30.1# sh Configure -des -Dprefix=/usr \
> -Dvendorprefix=/usr \
> -Dman1dir=/usr/share/man/man1 \
> -Dman3dir=/usr/share/man/man3 \
> -Dpager="/usr/bin/less -isR" \
> -Duseshrplib \
> -Dusethreads
First let's make sure your kit is complete. Checking...
Would you like to see the instructions? [n]
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Checking for cross-compile
No targethost for running compiler tests against defined, running locally
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
aix dragonfly irix_5 nonstopux sunos_4_0
aix_3 dynix irix_6 openbsd sunos_4_1
aix_4 dynixptx irix_6_0 opus super-ux
altos486 epix irix_6_1 os2 svr4
amigaos esix4 isc os390 svr5
atheos fps isc_2 os400 ti1500
aux_3 freebsd linux-android posix-bc ultrix_4
bitrig freemint linux qnx umips
bsdos gnu lynxos riscos unicos
catamount gnukfreebsd midnightbsd sco unicosmk
convexos gnuknetbsd minix sco_2_3_0 unisysdynix
cxux greenhills mips sco_2_3_1 utekv
cygwin haiku mirbsd sco_2_3_2 uwin
darwin hpux mpc sco_2_3_3 vos
dcosx i386 ncr_tower sco_2_3_4
dec_osf interix netbsd solaris_2
dos_djgpp irix_4 newsos4 stellar
Which of these apply, if any? [linux]
Operating system name? [linux]
Operating system version? [4.15.0-91-generic]
Installation prefix to use? (~name ok) [/usr]
AFS does not seem to be running...
What installation prefix should I use for installing files? (~name ok)
[/usr]
Getting the current patchlevel...
Build a threading Perl? [y]
Use which C compiler? [cc]
Checking for GNU cc in disguise and/or its version number...
Now, how can we feed standard input to your C preprocessor...
Directories to use for library searches?
[/usr/local/lib /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed /usr/lib /tools/lib/../lib /tools/lib /lib]
What is the file extension used for shared libraries? [so]
Make shared library basenames unique? [n]
Build Perl for SOCKS? [n]
Try to use long doubles if available? [n]
Checking for optional libraries...
What libraries to use?
[-lpthread -lgdbm -ldl -lm -lcrypt -lutil -lc -lgdbm_compat]
What optimizer/debugger flag should be used? [-O2]
Any additional cc flags?
[-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include]
Let me guess what the preprocessor flags are...
Any additional ld flags (NOT including libraries)?
[ -fstack-protector-strong -L/usr/local/lib]
Checking your choice of C compiler and flags for coherency...
I've tried to compile and run the following simple program:
#include <stdio.h>
int main() { printf("Ok\n"); return(0); }
I used the command:
cc -o try -O2 -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -fstack-protector-strong -L/usr/local/lib try.c -lpthread -lgdbm -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
./try
and I got the following output:
./try: error while loading shared libraries: libgdbm.so.6: cannot open shared object file: No such file or directory
The program compiled OK, but exited with status 127.
You have a problem. Shall I abort Configure [y]
Ok. Stopping Configure.If anything is able to be done here to solve this, I would appreciate it.
OS: LXLE
LFS version: 9.1
Perl version: 5.30.1


I am currently having problems compiling perl-5.30.1. When trying to compile it according to the LFS book (version 9.1), I get the following error (the whole log for the make command is shown):
Code:echo @`sh cflags "optimize='-O2'" opmini.o` -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB opmini.c
@cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB opmini.c
echo @`sh cflags "optimize='-O2'" perlmini.o` -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB perlmini.c
@cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings -DPERL_IS_MINIPERL -DPERL_EXTERNAL_GLOB perlmini.c
In file included from perl.c:37:
perl.c: In function 'Perl_sys_init':
perl.h:2688:51: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2688 | # define PERL_FPU_INIT PL_sigfpe_saved = (Sighandler_t) signal(SIGFPE, SIG_IGN)
| ^
unixish.h:150:29: note: in expansion of macro 'PERL_FPU_INIT'
150 | MALLOC_CHECK_TAINT2(*c,*v) PERL_FPU_INIT; PERLIO_INIT; MALLOC_INIT
| ^~~~~~~~~~~~~
perl.c:125:5: note: in expansion of macro 'PERL_SYS_INIT_BODY'
125 | PERL_SYS_INIT_BODY(argc, argv);
| ^~~~~~~~~~~~~~~~~~
perl.c: In function 'Perl_sys_init3':
perl.h:2688:51: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2688 | # define PERL_FPU_INIT PL_sigfpe_saved = (Sighandler_t) signal(SIGFPE, SIG_IGN)
| ^
unixish.h:150:29: note: in expansion of macro 'PERL_FPU_INIT'
150 | MALLOC_CHECK_TAINT2(*c,*v) PERL_FPU_INIT; PERLIO_INIT; MALLOC_INIT
| ^~~~~~~~~~~~~
perl.h:2738:49: note: in expansion of macro 'PERL_SYS_INIT_BODY'
2738 | # define PERL_SYS_INIT3_BODY(argvp,argcp,envp) PERL_SYS_INIT_BODY(argvp,argcp)
| ^~~~~~~~~~~~~~~~~~
perl.c:138:5: note: in expansion of macro 'PERL_SYS_INIT3_BODY'
138 | PERL_SYS_INIT3_BODY(argc, argv, env);
| ^~~~~~~~~~~~~~~~~~~
perl.c: In function 'S_parse_body':
perl.c:2399:22: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2399 | if (sigstate == (Sighandler_t) SIG_IGN) {
| ^
In file included from perl.h:5359,
from perl.c:37:
perl.c:2402:26: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2402 | (void)rsignal(SIGCHLD, (Sighandler_t)SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings gv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings toke.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perly.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pad.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings regcomp.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings dump.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings util.c
util.c: In function 'Perl_rsignal':
util.c:2695:9: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2695 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2698:22: warning: cast between incompatible function types from 'Sighandler_t' {aka 'void (*)(int, struct <anonymous> *, void *)'} to 'void (*)(int)' [-Wcast-function-type]
2698 | act.sa_handler = (void(*)(int))handler;
| ^
util.c:2706:40: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2706 | if (signo == SIGCHLD && handler == (Sighandler_t) SIG_IGN)
| ^
util.c:2710:13: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2710 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2712:13: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2712 | return (Sighandler_t) oact.sa_handler;
| ^
util.c: In function 'Perl_rsignal_state':
util.c:2722:9: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2722 | return (Sighandler_t) SIG_ERR;
| ^
util.c:2724:9: warning: cast between incompatible function types from '__sighandler_t' {aka 'void (*)(int)'} to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2724 | return (Sighandler_t) oact.sa_handler;
| ^
util.c: In function 'Perl_rsignal_save':
util.c:2743:22: warning: cast between incompatible function types from 'Sighandler_t' {aka 'void (*)(int, struct <anonymous> *, void *)'} to 'void (*)(int)' [-Wcast-function-type]
2743 | act.sa_handler = (void(*)(int))handler;
| ^
util.c:2751:40: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
2751 | if (signo == SIGCHLD && handler == (Sighandler_t) SIG_IGN)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mg.c
mg.c: In function 'Perl_magic_getsig':
mg.c:1465:25: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1465 | if(sigstate == (Sighandler_t) SIG_IGN)
| ^
In file included from perl.h:5359,
from mg.c:43:
mg.c: In function 'Perl_magic_setsig':
mg.c:1742:20: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1742 | (void)rsignal(i, (Sighandler_t) SIG_IGN);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
mg.c:1752:20: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
1752 | (void)rsignal(i, (Sighandler_t) SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings reentr.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mro_core.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings keywords.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings hv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings av.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings run.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_hot.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings sv.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings scope.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_ctl.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_sys.c
In file included from perl.h:5359,
from pp_sys.c:31:
pp_sys.c: In function 'Perl_pp_system':
pp_sys.c:4421:28: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
4421 | rsignal_save(SIGINT, (Sighandler_t) SIG_IGN, &ihand);
| ^
embed.h:1560:55: note: in definition of macro 'rsignal_save'
1560 | #define rsignal_save(a,b,c) Perl_rsignal_save(aTHX_ a,b,c)
| ^
pp_sys.c:4422:28: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
4422 | rsignal_save(SIGQUIT, (Sighandler_t) SIG_IGN, &qhand);
| ^
embed.h:1560:55: note: in definition of macro 'rsignal_save'
1560 | #define rsignal_save(a,b,c) Perl_rsignal_save(aTHX_ a,b,c)
| ^
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings doop.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings doio.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings regexec.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings utf8.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings taint.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings deb.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings universal.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings globals.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perlio.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings perlapi.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings numeric.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings mathoms.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings locale.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_pack.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings pp_sort.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings caretx.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings dquote.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings time64.c
cc -c -DPERL_CORE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -std=c89 -O2 -Wall -Werror=declaration-after-statement -Werror=pointer-arith -Wextra -Wc++-compat -Wwrite-strings miniperlmain.c
In file included from perl.h:5359,
from miniperlmain.c:57:
miniperlmain.c: In function 'main':
miniperlmain.c:139:29: warning: cast between incompatible function types from 'void (*)(int)' to 'void (*)(int, siginfo_t *, void *)' {aka 'void (*)(int, struct <anonymous> *, void *)'} [-Wcast-function-type]
139 | rsignal(PL_sig_num[i], (Sighandler_t) SIG_DFL);
| ^
embed.h:643:44: note: in definition of macro 'rsignal'
643 | #define rsignal(a,b) Perl_rsignal(aTHX_ a,b)
| ^
cc -fstack-protector-strong -o miniperl \
opmini.o perlmini.o gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o mro_core.o keywords.o hv.o av.o run.o pp_hot.o sv.o pp.o scope.o pp_ctl.o pp_sys.o doop.o doio.o regexec.o utf8.o taint.o deb.o universal.o globals.o perlio.o perlapi.o numeric.o mathoms.o locale.o pp_pack.o pp_sort.o caretx.o dquote.o time64.o miniperlmain.o -lm /tools/lib/libcrypt.a
/usr/bin/ld: opmini.o: in function `Perl_op_sibling_splice':
opmini.c:(.text+0x586c): undefined reference to `pthread_getspecific'
/usr/bin/ld: opmini.o: in function `Perl_load_module_nocontext':
opmini.c:(.text+0x1ff25): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlmini.o: in function `perl_alloc':
perlmini.c:(.text+0x653): undefined reference to `pthread_setspecific'
/usr/bin/ld: perlmini.c:(.text+0x687): undefined reference to `pthread_key_create'
/usr/bin/ld: perlmini.c:(.text+0x69d): undefined reference to `pthread_setspecific'
/usr/bin/ld: perlmini.o: in function `perl_fini':
perlmini.c:(.text.exit+0x1c): undefined reference to `pthread_key_delete'
/usr/bin/ld: regcomp.o: in function `S_delete_recursion_entry':
regcomp.c:(.text+0x13cc): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x141b): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.o: in function `Perl_parse_uniprop_string':
regcomp.c:(.text+0x1605d): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x160b4): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.c:(.text+0x166b8): undefined reference to `pthread_setspecific'
/usr/bin/ld: regcomp.o:regcomp.c:(.text+0x1671e): more undefined references to `pthread_setspecific' follow
/usr/bin/ld: mg.o: in function `Perl_csighandler':
mg.c:(.text+0x22cb): undefined reference to `pthread_getspecific'
/usr/bin/ld: mg.o: in function `Perl_sighandler':
mg.c:(.text+0x654a): undefined reference to `pthread_getspecific'
/usr/bin/ld: pp_hot.o: in function `Perl_croak_caller':
pp_hot.c:(.text+0xa0e8): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `S_croak_overflow':
sv.c:(.text+0x35b): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_clone_params_del':
sv.c:(.text+0x3502): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.c:(.text+0x3518): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.c:(.text+0x355f): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_catpvf_nocontext':
sv.c:(.text+0x8098): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_catpvf_mg_nocontext':
sv.c:(.text+0x8198): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_newSVpvf_nocontext':
sv.c:(.text+0x85f6): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_clone_params_new':
sv.c:(.text+0xc547): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.c:(.text+0xc55d): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.c:(.text+0xc5ba): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `perl_clone':
sv.c:(.text+0x18462): undefined reference to `pthread_setspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_setpvf_nocontext':
sv.c:(.text+0x1ba36): undefined reference to `pthread_getspecific'
/usr/bin/ld: sv.o: in function `Perl_sv_setpvf_mg_nocontext':
sv.c:(.text+0x1bc36): undefined reference to `pthread_getspecific'
/usr/bin/ld: pp.o: in function `S_find_runcv_name':
pp.c:(.text+0x96c): undefined reference to `pthread_getspecific'
/usr/bin/ld: universal.o: in function `Perl_croak_xs_usage':
universal.c:(.text+0x134a): undefined reference to `pthread_getspecific'
/usr/bin/ld: locale.o: in function `S_emulate_setlocale':
locale.c:(.text+0x20): undefined reference to `pthread_getspecific'
/usr/bin/ld: locale.o:locale.c:(.text+0x897): more undefined references to `pthread_getspecific' follow
/usr/bin/ld: util.o: in function `Perl_set_context':
util.c:(.text+0x3a4e): undefined reference to `pthread_setspecific'
/usr/bin/ld: util.o: in function `Perl_xs_handshake':
util.c:(.text+0x70ec): undefined reference to `pthread_getspecific'
/usr/bin/ld: util.o: in function `Perl_get_context':
util.c:(.text+0x3a37): undefined reference to `pthread_getspecific'
/usr/bin/ld: reentr.o: in function `Perl_reentrant_retry':
reentr.c:(.text+0x5b): undefined reference to `pthread_getspecific'
/usr/bin/ld: utf8.o: in function `Perl__utf8n_to_uvchr_msgs_helper':
utf8.c:(.text+0x19d5): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlio.o: in function `PerlIO_debug':
perlio.c:(.text+0x91b): undefined reference to `pthread_getspecific'
/usr/bin/ld: perlio.o:perlio.c:(.text+0x44e4): more undefined references to `pthread_getspecific' follow
collect2: error: ld returned 1 exit status
make: *** [makefile:364: lib/buildcustomize.pl] Error 1While doing a sh Configure command for perl, I also got this error:
Code:(lfs chroot) root:/sources/perl-5.30.1# sh Configure -des -Dprefix=/usr \
> -Dvendorprefix=/usr \
> -Dman1dir=/usr/share/man/man1 \
> -Dman3dir=/usr/share/man/man3 \
> -Dpager="/usr/bin/less -isR" \
> -Duseshrplib \
> -Dusethreads
First let's make sure your kit is complete. Checking...
Would you like to see the instructions? [n]
Locating common programs...
Checking compatibility between /bin/echo and builtin echo (if any)...
Symbolic links are supported.
Checking how to test for symbolic links...
You can test for symbolic links with 'test -h'.
Checking for cross-compile
No targethost for running compiler tests against defined, running locally
Good, your tr supports [:lower:] and [:upper:] to convert case.
Using [:upper:] and [:lower:] to convert case.
aix dragonfly irix_5 nonstopux sunos_4_0
aix_3 dynix irix_6 openbsd sunos_4_1
aix_4 dynixptx irix_6_0 opus super-ux
altos486 epix irix_6_1 os2 svr4
amigaos esix4 isc os390 svr5
atheos fps isc_2 os400 ti1500
aux_3 freebsd linux-android posix-bc ultrix_4
bitrig freemint linux qnx umips
bsdos gnu lynxos riscos unicos
catamount gnukfreebsd midnightbsd sco unicosmk
convexos gnuknetbsd minix sco_2_3_0 unisysdynix
cxux greenhills mips sco_2_3_1 utekv
cygwin haiku mirbsd sco_2_3_2 uwin
darwin hpux mpc sco_2_3_3 vos
dcosx i386 ncr_tower sco_2_3_4
dec_osf interix netbsd solaris_2
dos_djgpp irix_4 newsos4 stellar
Which of these apply, if any? [linux]
Operating system name? [linux]
Operating system version? [4.15.0-91-generic]
Installation prefix to use? (~name ok) [/usr]
AFS does not seem to be running...
What installation prefix should I use for installing files? (~name ok)
[/usr]
Getting the current patchlevel...
Build a threading Perl? [y]
Use which C compiler? [cc]
Checking for GNU cc in disguise and/or its version number...
Now, how can we feed standard input to your C preprocessor...
Directories to use for library searches?
[/usr/local/lib /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include-fixed /usr/lib /tools/lib/../lib /tools/lib /lib]
What is the file extension used for shared libraries? [so]
Make shared library basenames unique? [n]
Build Perl for SOCKS? [n]
Try to use long doubles if available? [n]
Checking for optional libraries...
What libraries to use?
[-lpthread -lgdbm -ldl -lm -lcrypt -lutil -lc -lgdbm_compat]
What optimizer/debugger flag should be used? [-O2]
Any additional cc flags?
[-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include]
Let me guess what the preprocessor flags are...
Any additional ld flags (NOT including libraries)?
[ -fstack-protector-strong -L/usr/local/lib]
Checking your choice of C compiler and flags for coherency...
I've tried to compile and run the following simple program:
#include <stdio.h>
int main() { printf("Ok\n"); return(0); }
I used the command:
cc -o try -O2 -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -fstack-protector-strong -L/usr/local/lib try.c -lpthread -lgdbm -ldl -lm -lcrypt -lutil -lc -lgdbm_compat
./try
and I got the following output:
./try: error while loading shared libraries: libgdbm.so.6: cannot open shared object file: No such file or directory
The program compiled OK, but exited with status 127.
You have a problem. Shall I abort Configure [y]
Ok. Stopping Configure.If anything is able to be done here to solve this, I would appreciate it.
OS: LXLE
LFS version: 9.1
Perl version: 5.30.1