[meta-freescale] [meta-fsl-arm] Can't build vlc

Gary Thomas gary at mlbassoc.com
Wed Apr 8 14:20:57 PDT 2015


On 2015-04-08 14:24, Otavio Salvador wrote:
> Hello Gary,
>
> On Wed, Apr 8, 2015 at 5:16 PM, Gary Thomas <gary at mlbassoc.com> wrote:
>> This seems to be a BSP issue as I can build vlc for any non-i.MX
>> target.
>>
>> When I try to build vlc using this setup:
>> Build Configuration:
>> BB_VERSION        = "1.27.0"
>> BUILD_SYS         = "x86_64-linux"
>> NATIVELSBSTRING   = "Ubuntu-14.04"
>> TARGET_SYS        = "arm-poky-linux-gnueabi"
>> MACHINE           = "nitrogen6x"
>> DISTRO            = "poky"
>> DISTRO_VERSION    = "1.8+snapshot-20150408"
>> TUNE_FEATURES     = "arm armv7a vfp neon callconvention-hard cortexa9"
>> TARGET_FPU        = "vfp-neon"
>> meta              = "master:9e4adec98db325112ca7a8b9dd95722d4d0ab642"
>> meta-fsl-arm      = "master:bfe01a0ebde407086f4a7710ea165c6beff310d7"
>> meta-fsl-arm-extra = "master:49843fbd4cdfcdd37ad191dbf4bdc63e06cf1e0e"
>> meta-oe
>> meta-gnome
>> meta-multimedia   = "master:df6c7b1279790d27ebfd58fbdfbac89bde5782ec"
>> meta-yocto
>> meta-yocto-bsp    = "master:9e4adec98db325112ca7a8b9dd95722d4d0ab642"
>>
>> conf/bblayers.conf:
>> BBLAYERS ?= " \
>>    /local/poky-cutting-edge/meta \
>>    /local/poky-cutting-edge/meta-fsl-arm \
>>    /local/poky-cutting-edge/meta-fsl-arm-extra \
>>    /local/meta-openembedded.github/meta-oe \
>>    /local/meta-openembedded.github/meta-gnome \
>>    /local/meta-openembedded.github/meta-multimedia \
>>    /local/poky-cutting-edge/meta-yocto \
>>    /local/poky-cutting-edge/meta-yocto-bsp \
>>    "
>>
>> conf/local.conf  (just the parts I added):
>> PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
>> PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"
>> LICENSE_FLAGS_WHITELIST ?= "commercial_gst-fluendo-mp3 \
>>                              commercial_gst-openmax \
>>                              commercial_gst-plugins-ugly \
>>                              commercial_gst-ffmpeg \
>>                              commercial_gstreamer1.0-libav \
>>                              commercial_lame \
>>                              commercial_libav \
>>                              commercial_libpostproc \
>>                              commercial_mplayer2 \
>>                              commercial_x264 \
>>                              commercial_libmad \
>>                              commercial_libomxil \
>>                              commercial_mpeg2dec \
>>                              commercial_qmmp"
>> MACHINE = "nitrogen6x"
>> ACCEPT_FSL_EULA = "1"
>>
>> I get this error:
>> | arm-poky-linux-gnueabi-libtool:   error: cannot find the library '' or
>> unhandled argument '-DLINUX=1'
>> | make[6]: *** [libqt4_plugin.la] Error 1
>> | make[6]: Leaving directory
>> `/tmp/im6_2015-04-08/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/vlc/2.1.4-r0/build/modules/gui/qt4'
>> ...
>> ERROR: Task 6
>> (/local/meta-openembedded.github/meta-multimedia/recipes-multimedia/vlc/vlc_2.1.4.bb,
>> do_compile) failed with exit code '1'
>>
>> Full compile log is at http://www.mlbassoc.com/poky/vlc-log.do_compile2
>>
>> Curious thing is I can build vlc for any other target I've tried,
>> just not for the i.MX6.  For example, just change to "ls1021atwr"
>> and it will work.
>>
>> What's so special (broken) about i.MX6?
>
> GPU support. Check other bbappend files about how to enable support
> for it (qtbase might be  a good base).
>

It turns out the problem is not in vlc but in the creation of libQtGui
'tmp/sysroots/nitrogen6x/usr/lib/libQtGui.la' contains these lines:

   # Libraries that this one depends upon.
   dependency_libs='   -lEGL -lGAL -DLINUX=1 -DEGL_API_FB=1  -lQtCore  -lpthread '

You can't have preprocessor commands within the link/library section.  I removed
them [manually] and was able to successfully build vlc.

I looked at 'meta-fsl-arm/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend' but I
could not see what to change to keep these flags out of the *.la files

Any help with that would be appreciated.

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------


More information about the meta-freescale mailing list