On 3/18/12 8:47 PM, Ni Qingliang wrote:
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@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'.
I don't see anything obvious in the code below. Search the build logs for
libXrandr, libXext for references to /usr/lib or similar.
Are you using the stock oe-core toolchain? If so there is a patch that detects
and attempts to poison (cause an error) usage of system directories while cross
compiling. If you are using your own toolchain, a vendor toolchain, or a
CS/Mentor toolchain.. then you may not have this patch and the system won't auto
detect that type of contamination.
Check the version of glibc on your host, is it 2.14 (or newer)? Then check the
version of eglibc in your build, I assume it's 2.13...
if the above is true, that would seem to indicate that it is likely host
contamination...
The other tool you can enable is "swabber", in your local.conf in the
"USER_CLASSES" you can enable "image-swab". Swabber can be a -very- slow
process, but is a good last resort for identifying host contamination.
It's been a while since I used swabber, and I don't remember how. I've been
looking and I'm having problems finding the documentation on setup and usage of
swabber. You may need to join and ask on the Yocto Project mailing list for
help on that.
--Mark
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/libXren!
de!
r.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@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@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@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core