[yocto] undefined reference to `pthread_getspecific' in perl-native_5.12.2.bb task do_compile?

Joshua Lock josh at linux.intel.com
Tue Jun 7 21:38:57 PDT 2011


On Tue, 2011-06-07 at 19:41 -0700, Daryl Spitzer wrote:
> The good news is that following the instructions in
> https://wiki.yoctoproject.org/wiki/Working_Behind_a_Network_Proxy
> seems to have solved my proxy problems.  But unfortunately I'm getting
> errors after running `bitbake -k poky-image-sato`, following the
> "Building an Image" instructions in the Yocto Project Quick Start.  (I
> didn't make any changes to the conf/local.conf file generated by
> `source poky-bernard-5.0/poky-init-build-env poky-5.0-build`, except
> to add the CVS setup lines as directed in the
> Working_Behind_a_Network_Proxy wiki page.)  When I repeat `bitbake -k
> poky-image-sato` I believe I get the same results.
> 
> Here's the output, up to and including the first error:
> 
> 
> Loading cache...done.
> Loaded 980 entries from dependency cache.
> Parsing recipes...done.
> Parsing of 783 .bb files complete (772 cached, 11 parsed). 991
> targets, 11 skipped, 0 masked, 0 errors.
> 
> OE Build Configuration:
> BB_VERSION        = "1.11.0"
> METADATA_BRANCH   = "<unknown>"
> METADATA_REVISION = "<unknown>"
> TARGET_ARCH       = "i586"
> TARGET_OS         = "linux"
> MACHINE           = "qemux86"
> DISTRO            = "poky"
> DISTRO_VERSION    = "1.0"
> TARGET_FPU        = ""
> 
> NOTE: Resolving any missing task queue dependencies
> NOTE: Preparing runqueue
> NOTE: Executing SetScene Tasks
> NOTE: Executing RunQueue Tasks
> NOTE: Running task 632 of 4961 (ID: 387,
> /home/daryls/yocto/poky-bernard-5.0/meta/recipes-devtools/perl/perl-native_5.12.2.bb,
> do_compile)
> NOTE: package perl-native-5.12.2-r7: task do_compile: Started
> ERROR: Function 'do_compile' failed (see
> /home/daryls/yocto/poky-5.0-build/tmp/work/x86_64-linux/perl-native-5.12.2-r7/temp/log.do_compile.27994
> for further information)
> ...
> 
> ----------
> 
> And here's the head of log.do_compile.27994:
> 
> 
> OTE: make -e MAKEFLAGS=
> gcc -L/home/daryls/yocto/poky-5.0-build/tmp/sysroots/x86_64-linux/usr/lib
> -Wl,-rpath-link,/home/daryls/yocto/poky-5.0-build/tmp/sysroots/x86_64-linux/usr/lib
> -Wl,-rpath,/home/daryls/yocto/poky-5.0-build/tmp/sysroots/x86_64-linux/usr/lib
> -Wl,-O1 -fstack-protector -L/usr/local/lib -o miniperl \
> 	      gv.o toke.o perly.o pad.o regcomp.o dump.o util.o mg.o reentr.o
> mro.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
> \
> 	    miniperlmain.o opmini.o perlmini.o
> util.o: In function `Perl_safesysmalloc':
> util.c:(.text+0x558): undefined reference to `pthread_getspecific'
> util.o: In function `Perl_safesysrealloc':
> util.c:(.text+0x5f0): undefined reference to `pthread_getspecific'
> util.o: In function `Perl_croak_nocontext':
> util.c:(.text+0x19b6): undefined reference to `pthread_getspecific'
> 
> ----------
> 
> Does this look familiar?  Why would I be getting these errors when
> following the Yocto Project Quick Start instructions, without changes?
>  Did I miss something?

It does not. However this is when trying to build perl-native, i.e. Poky
is trying to build its own version of Perl but linked against your
system libraries etc and is unable to find some pthread functions to
link to.

Can you tell us which distribution/version combination you are using?

Could be that we need to patch perl-native to -lpthread ?

Thanks,
Joshua
-- 
Joshua Lock
        Yocto Build System Monkey
        Intel Open Source Technology Centre




More information about the yocto mailing list