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

Otavio Salvador otavio at ossystems.com.br
Tue Dec 18 03:59:38 PST 2012


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 have merged the patch so you should be good with that now.

--
Otavio Salvador                             O.S. Systems
E-mail: otavio at ossystems.com.br  http://www.ossystems.com.br
Mobile: +55 53 9981-7854              http://projetos.ossystems.com.br



More information about the meta-freescale mailing list