Bug 2931

Summary: multilib clutter compile failed
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Paul Eggleton <bluelightning>
Component: graphicsAssignee: Bogdan Marinescu <bogdan.a.marinescu>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: Medium CC: jessica.zhang, laurentiu.serban, meta.mr.watcher, meta.watcher, sgw
Version: 1.3   
Target Milestone: 1.3 M4   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Paul Eggleton 2012-08-10 14:56:45 UTC
Setting up multilib lib64 and building lib64-clutter-1.8 on my own build machine resulted in the following:

---------------- snip ----------------
| x86_64-pokymllib64-linux-libtool: link: x86_64-pokymllib64-linux-gcc -m64 --sysroot=/media/large/tmp-multilib/sysroots/lib64-qemux86 -pthread -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/cogl -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/gdk-pixbuf-2.0 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/libdrm -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/libpng12 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/glib-2.0 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/glib-2.0/include -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/cairo -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/pixman-1 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/freetype2 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/atk-1.0 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/pango-1.0 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/json-glib-1.0 -pthread -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/include/glib-2.0 -I/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/glib-2.0/include -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/cally-atktext-example cally-examples-util.o cally-atktext-example.o -pthread -pthread  ../../clutter/.libs/libclutter-glx-1.0.so -L/media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64 -L=/usr/lib64 /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libcairo-gobject.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libatk-1.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libcogl-pango.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libpangocairo-1.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/../lib64/libstdc++.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libcairo.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libpixman-1.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libxcb-shm.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libxcb-render.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXrender.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libcogl.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libgdk_pixbuf-2.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libpng12.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libjson-glib-1.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libgio-2.0.so -lz -lresolv -lGL /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libdrm.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libpangoft2-1.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libpango-1.0.so -lm /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libfontconfig.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libfreetype.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libexpat.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXdamage.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXfixes.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXcomposite.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXi.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXext.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libX11.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libxcb.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXau.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libXdmcp.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libgobject-2.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libffi.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libgthread-2.0.so /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libgmodule-2.0.so -ldl /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libglib-2.0.so -lpthread -lrt -pthread -Wl,-rpath -Wl,/usr/lib64/../lib64
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_2arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_create_context_attribs_arb_checked'
| collect2: error: ld returned 1 exit status
| make[3]: *** [cally-atkeditabletext-example] Error 1
| make[3]: *** Waiting for unfinished jobs....
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_2arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_create_context_attribs_arb_checked'
| collect2: error: ld returned 1 exit status
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_2arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_create_context_attribs_arb_checked'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference collect2: error: ld returned 1 exit statusto
|  `xcb_glx_set_client_info_arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_2arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to/ `mediaxcb_glx_create_context_attribs_arb_checked/large'/tmp
| -multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_set_client_info_2arb'
| /media/large/tmp-multilib/sysroots/lib64-qemux86/usr/lib64/libGL.so: undefined reference to `xcb_glx_create_context_attribs_arb_checked'
| collect2: error: ld returned 1 exit status
| collect2: error: ld returned 1 exit status
| make[3]: *** [cally-atkcomponent-example] Error 1
| make[3]: *** [cally-clone-example] Error 1
| make[3]: *** [cally-atkevents-example] Error 1
| make[3]: *** [cally-atktext-example] Error 1
| make[3]: Leaving directory `/media/large/tmp-multilib/work/x86_64-pokymllib64-linux/lib64-clutter-1.8-1.8.4-r1/clutter-1.8.4/tests/accessibility'
| make[2]: *** [all-recursive] Error 1
| make[2]: Leaving directory `/media/large/tmp-multilib/work/x86_64-pokymllib64-linux/lib64-clutter-1.8-1.8.4-r1/clutter-1.8.4/tests'
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory `/media/large/tmp-multilib/work/x86_64-pokymllib64-linux/lib64-clutter-1.8-1.8.4-r1/clutter-1.8.4'
| make: *** [all] Error 2
| ERROR: oe_runmake failed
| ERROR: Function failed: do_compile (see /media/large/tmp-multilib/work/x86_64-pokymllib64-linux/lib64-clutter-1.8-1.8.4-r1/temp/log.do_compile.15973 for further information)
NOTE: package lib64-clutter-1.8-1.8.4-r1: task do_compile: Failed
ERROR: Task 6 (virtual:multilib:lib64:/home/paul/poky/poky/meta/recipes-graphics/clutter/clutter-1.8_1.8.4.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 1885 tasks of which 1867 didn't need to be rerun and 1 failed.
---------------- snip ----------------

Seems to me from the output that it should be linking against libxcb-glx.so (which does exist) but for some reason it isn't.
Comment 1 Paul Eggleton 2012-09-13 17:43:54 UTC
Either this is some kind of race condition or is fixed, I'm not sure which - my last multilib lib64 build got past this point with no error.
Comment 2 Jessica 2012-09-14 14:26:40 UTC
Marke it resolved based on last comment
Comment 3 Laurentiu Serban 2012-10-25 23:18:30 UTC
verified in 3f14eb3674d44b61fe19016902d41cae57be8e6c