[OE-core] LSB support?

Ni Qingliang niqingliang at insigma.com.cn
Mon Mar 19 01:47:34 UTC 2012


I have encountered a similar problem when do a clean building in another
VM (running archlinux).

after remove /usr//lib/libXrandr.so.2:
mv /usr/lib/../lib/libXrandr.so.2 /usr/lib/../lib/libXrandr.so.2.bak

I got a new error:
/usr/lib/../lib/libXext.so.6: undefined reference to `memcpy at GLIBC_2.14'

so IMO, it used the wrong lib path. following is the output section of
'do_compile', the key is '/usr/lib/../lib', maybe it should be
'<xxxdir>/usr/lib/../lib'.

output section:
Making all in gconf
make[2]: Entering directory
`/media/pangu/lsbt/tmp/work/x86_64-poky-linux/gconf-3.2.3-r8/GConf-3.2.3/gconf'
make  all-am
make[3]: Entering directory
`/media/pangu/lsbt/tmp/work/x86_64-poky-linux/gconf-3.2.3-r8/GConf-3.2.3/gconf'
../x86_64-poky-linux-libtool  --tag=CC   --mode=link
x86_64-poky-linux-gcc    -m64
--sysroot=/media/pangu/lsbt/tmp/sysroots/qemux86-64  -O2 -pipe -g
-feliminate-unused-debug-types -Wall -DGCONF_ENABLE_DEBUG=1  -Wl,-O1
-Wl,--hash-style=gnu -Wl,--as-needed -o gconf-sanity-check-2
gconf-sanity-check.o libgconf-2.la   -pthread -Wl,--export-dynamic
-lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0
-lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype
-lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0
-lxml2   
x86_64-poky-linux-libtool: link: x86_64-poky-linux-gcc -m64
--sysroot=/media/pangu/lsbt/tmp/sysroots/qemux86-64 -O2 -pipe -g
-feliminate-unused-debug-types -Wall -DGCONF_ENABLE_DEBUG=1 -Wl,-O1
-Wl,--hash-style=gnu -Wl,--as-needed -o .libs/gconf-sanity-check-2
gconf-sanity-check.o -pthread
-Wl,--export-dynamic  ./.libs/libgconf-2.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libdbus-glib-1.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libdbus-1.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgtk-x11-2.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgdk-x11-2.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libatk-1.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libpangocairo-1.0.so -L=/usr/lib /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libpangoft2-1.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/../lib/libstdc++.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgdk_pixbuf-2.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgio-2.0.so -lresolv /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libcairo.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libpixman-1.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libpng12.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libXrender.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libX11.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libxcb.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libXau.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libXdmcp.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libpango-1.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libfontconfig.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libfreetype.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libexpat.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgobject-2.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libffi.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgmodule-2.0.so /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libgthread-2.0.so -lpthread /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libglib-2.0.so -lrt /media/pangu/lsbt/tmp/sysroots/qemux86-64/usr/lib/libxml2.so -ldl -lz -lm -pthread -Wl,-rpath -Wl,/usr/lib/../lib
/usr/lib/../lib/libXext.so.6: undefined reference to `memcpy at GLIBC_2.14'
collect2: ld returned 1 exit status
make[3]: *** [gconf-sanity-check-2] Error 1

On Fri, 2012-03-16 at 23:36 +0800, Mark Hatle wrote:
> On 3/16/12 12:18 AM, Ni Qingliang wrote:
> > when building qemux86-64 arch core-image-lsb (distro is poky-lsb), I got
> > /usr/lib/../lib/libXrandr.so.2: undefined reference to
> > `memcpy at GLIBC_2.14' when 'do_compile' gconf 3.2.3.
> >
> > the default eglibc is 2.13, why it needs 2.14?
> 
> Without anything further, the only guess I can make is that either you aren't
> using the version of glibc you think you are, it's gotten some host
> contamination, an explicit reference was added to libXrandr (doubtful), or you
> are using something that was built/cached from a previous build.  (i.e. did you
> build w/ eglibc 2.14/2.15 -- and then switch back to eglibc 2.13 for some reason?)
> 
> On 3/15/12 9:38 PM, Ni Qingliang wrote:
>  > first, thanks your reply.
>  >
>  > Because I can't use task-core-lsb on my device (flash space is not
>  > enough), I have to make a custom lsb-base image (without
>  > perl/python/graphics).
>  >
>  > I have checked the "linuxstdbase", and it will change the configure
>  > option of some packages.
>  >
>  > Indeed, I think the daemon/failure/warning fuctions should be considered
>  > in package lsb's RDEPENDS.
>  >
>  > what I want to know is the rdepends or where is the
>  > daemon/failure/warning.
> 
> It certainly looks like a component is missing somewhere in the shell scrips
> that are provided by the LSB functions.  I would assume that the
> depends/provides is setup properly to point to whatever should be providing the
> missing daemon, failure, warning commands.  If it's not (or if by default -- non
> lsb mode) they're not being built, it's a definite bug.  You shouldn't be able
> to build a non-functional systems.
> 
> Please file a defect on bugzilla.yoctoproject.org.  I will attempt to
> investigate it (or someone else can).  Hopefully it's just as a simple as a
> missing dependency.
> 
> --Mark
> 
> > On Fri, 2012-03-16 at 00:25 +0800, Mark Hatle wrote:
> >> On 3/15/12 3:18 AM, Ni Qingliang wrote:
> >>> Hello, I'm working on custom lsb-base image using oe-core.
> >>>
> >>> and when using the lsb script, found error:
> >>>
> >>> lsb_start_daemon line 44: daemon command not found.
> >>>
> >>> similar thing happend on lsb_log_message: failure and warning command
> >>> not found.
> >>>
> >>> maybe these function should be defined in /etc/init.d/functions?
> >>>
> >>> but there are not these function in this file (belongs to initscripts).
> >>
> >> Did you enable the LSB distribution settings?  Without this, various components
> >> may not be available.
> >>
> >> In Poky, there is a "poky-lsb" distribution type:
> >>
> >> DISTRO = "poky-lsb"
> >> DISTROOVERRIDES = "poky:linuxstdbase"
> >>
> >> DISTRO_FEATURES_append = " pam largefile opengl"
> >> PREFERRED_PROVIDER_virtual/libx11 = "libx11"
> >>
> >> (as well as using the core-image-lsb and/or task-core-lsb components.)
> >>
> >> If you've tried this and those items are still broken, let me know and I can
> >> help investigate further.  (One final note, only LSB 1.4 is currently supported.)
> >>
> >> --Mark
> >>
> >>> Any idea?
> >>>
> >>> thanks!
> >>>
> >>>
> >>
> >>
> >> _______________________________________________
> >> Openembedded-core mailing list
> >> Openembedded-core at lists.openembedded.org
> >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
> >
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

-- 
Yi Qingliang
niqingliang at insigma.com.cn
https://niqingliang2003.wordpress.com





More information about the Openembedded-core mailing list