[meta-freescale] [PATCH] xf86-video-imxfb-vivante: add dependency on X11

Vladimir Zapolskiy vladimir_zapolskiy at mentor.com
Tue Dec 18 05:24:34 PST 2012


On 18.12.2012 13:59, Otavio Salvador wrote:
> On Tue, Dec 18, 2012 at 9:55 AM, Andrei Gherzan<andrei at gherzan.ro>  wrote:
>> On Tue, Dec 18, 2012 at 1:46 PM, Otavio Salvador<otavio at ossystems.com.br>
>> wrote:
>>>
>>> On Tue, Dec 18, 2012 at 9:43 AM, Vladimir Zapolskiy
>>> <vladimir_zapolskiy at mentor.com>  wrote:
>>>> On 18.12.2012 12:30, Andrei Gherzan wrote:
>>>>>
>>>>> On Tue, Dec 18, 2012 at 1:37 AM, Vladimir Zapolskiy
>>>>> <vladimir_zapolskiy at mentor.com<mailto:vladimir_zapolskiy at mentor.com>>
>>>>>
>>>>> wrote:
>>>>>
>>>>>      Prior to xf86-video-imxfs-vivante there should be built libX11.
>>>>>
>>>>>      This change fixes an issue met on configuration stage:
>>>>>
>>>>>      | configure:3303: checking whether the C compiler works
>>>>>      | configure:3325: arm-mentor-linux-gnueabi-gcc -march=armv7-a
>>>>>      -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9
>>>>>      -mno-unaligned-access [snip] -lm -ldl -lGAL-x11 conftest.c>&5
>>>>>      |
>>>>>
>>>>>
>>>>> /opt/projects/mentor/thales-mel6.0/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>>>      undefined reference to `XWidthOfScreen'
>>>>>      [snip]
>>>>>      | collect2: ld returned 1 exit status
>>>>>
>>>>> It's very strange that i never saw this issue before. I compiled this
>>>>> driver a couple of times and didn't see this error. Maybe it was a race
>>>>> thing where libx11 was compiled first but about that LDFLAGS, are you
>>>>> sure -lX11 is not added by default?
>>>>
>>>>
>>>> You would fix it, if you see it, mostly I work within non-Yocto
>>>> environment, and this might be the rootcause.
>>>>
>>>> Below is more detailed output:
>>>>
>>>> [log]
>>>>
>>>> | configure:3303: checking whether the C compiler works
>>>> | configure:3325: arm-mentor-linux-gnueabi-gcc  -march=armv7-a
>>>> -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -mtune=cortex-a9
>>>> -mno-unaligned-access
>>>> --sysroot=/opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite -O2
>>>> -pipe
>>>> -g -feliminate-unused-debug-types
>>>>
>>>> -I/opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/include/xorg
>>>> -I/opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/include/drm
>>>> -Wl,-O1 -Wl,--hash-style=gnu -lm -ldl -lGAL-x11 conftest.c>&5
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XWidthOfScreen'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XMoveWindow'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XCreateImage'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XCreateWindow'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XHeightOfScreen'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XOpenDisplay'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XSetWMProperties'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XDestroyWindow'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XCloseDisplay'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XGetGeometry'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XUnmapWindow'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XFreeGC'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XNextEvent'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XCreateGC'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XScreenOfDisplay'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XFlush'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XPutImage'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XInitThreads'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XGetImage'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XGetWindowAttributes'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XFreePixmap'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XStringListToTextProperty'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XCreatePixmap'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XMapRaised'
>>>> |
>>>>
>>>> /opt/projects/mentor/build/tmp/sysroots/imx6qsabrelite/usr/lib/libGAL-x11.so:
>>>> undefined reference to `XPending'
>>>>
>>>> | collect2: ld returned 1 exit status
>>>> | configure:3329: $? = 1
>>>> | configure:3367: result: no
>>>> | configure: failed program was:
>>>> | | /* confdefs.h */
>>>> | | #define PACKAGE_NAME "xf86-video-vivante"
>>>> | | #define PACKAGE_TARNAME "xf86-video-vivante"
>>>> | | #define PACKAGE_VERSION "0.1.0"
>>>> | | #define PACKAGE_STRING "xf86-video-vivante 0.1.0"
>>>> | | #define PACKAGE_BUGREPORT
>>>> "https://bugs.freedesktop.org/enter_bug.cgi?product=xorg"
>>>> | | #define PACKAGE_URL ""
>>>> | | #define PACKAGE "xf86-video-vivante"
>>>> | | #define VERSION "0.1.0"
>>>> | | /* end confdefs.h.  */
>>>> | |
>>>> | | int
>>>> | | main ()
>>>> | | {
>>>> | |
>>>> | |   ;
>>>> | |   return 0;
>>>> | | }
>>>> | configure:3372: error: in
>>>>
>>>> `/opt/projects/mentor/thales-mel6.0/build/tmp/work/imx6qsabrelite-mel-linux-gnueabi/xf86-video-imxfb-vivante-2_12.09.01-r0/xserver-xorg-video-imx-viv-12.09.01':
>>>> | configure:3374: error: C compiler cannot create executables
>>>> | See `config.log' for more details
>>>>
>>>> [/log]
>>>>
>>>> I would appreciate, if you could check your log of the configuration
>>>> task for presence of -lX11 linker option, and if it is present, it
>>>> would be good to know where it comes from.
>>>
>>> Are  you using gold or ld.bfd as linker? That might explain why we
>>> didn't catch this issue before.
>>>
>>
>> I'm using gold so that's not the issue.
>
> Yes, it is curious why their toolchain is more critical about it.
> Vladimir, can you check with your team what it does different? Just
> for us to learn from that.

I informed CodeBench team, hopefully they'll let you know the difference.

> I have merged the patch so you should be good with that now.

Thank you.

-- 
With best wishes,
Vladimir



More information about the meta-freescale mailing list