Building Chromium, VLC and X11VNC using Yocto: Difference between revisions

From Wiki-DB
Jump to navigationJump to search
Lzenz (talk | contribs)
Created page with "Please read the Yocto tutorial before you proceed. The following instruction were tested on our '''DHCOM i.MX6''' computer on module with Yocto stable branch '''Dizzy..."
 
Lzenz (talk | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 16: Line 16:
  $ git clone -b master https://github.com/OSSystems/meta-browser.git  
  $ git clone -b master https://github.com/OSSystems/meta-browser.git  


'''Note:''' Verify with chromium sources version 38.0.2125.101
'''Note:''' Verified with chromium sources version 38.0.2125.101


=== Edit your yocto configuration files ===
=== Edit your yocto configuration files ===
Line 86: Line 86:
</pre>
</pre>


Note: Bitbake fails with an dependency error. To fix the build edit 'tmp/sysroots/nitrogen6x/usr/lib/libQtGui.la' and run bitbake again.
Note: Bitbake fails with an dependency error. To fix the build edit 'tmp/sysroots/dhcomimx6dl/usr/lib/libQtGui.la' and run bitbake again.


<pre>
<code>
-dependency_libs=' -lEGL -lGAL -DLINUX=1 -DEGL_API_FB=1 -lQtCore -lpthread '
<font color="#EF1010">-dependency_libs=' -lEGL -lGAL -DLINUX=1 -DEGL_API_FB=1 -lQtCore -lpthread '  
+dependency_libs=' -lEGL -lGAL -lQtCore -lpthread '
</font><font color="#10D010">+dependency_libs=' -lEGL -lGAL -lQtCore -lpthread ' </font>
</pre>
</code>


== Test your image  ==
== Test your image  ==

Latest revision as of 08:30, 12 May 2015

Please read the Yocto tutorial before you proceed. The following instruction were tested on our DHCOM i.MX6 computer on module with Yocto stable branch Dizzy.

The following steps provide a step by step guide to build a image with

  • Chromium: The open-source web browser from Google with HTML5 and WebGL support.
  • VLC Media Player: The famouse portable, free and open-source media player and streaming media server provided by the VideoLAN project.
  • X11VNC: Enables to view remotely and to interact (mouse, keyboard) with X displays.

Configure Sources

Clone meta-browser

Clone the branch master of meta-browser inside the yocto/sources directory:

$ git clone -b master https://github.com/OSSystems/meta-browser.git 

Note: Verified with chromium sources version 38.0.2125.101

Edit your yocto configuration files

1. Edit yocto/build/conf/bblayers.conf to add the meta-browser layer at the end:

 ${BSPDIR}/sources/meta-browser \

2. Verified example yocto/build/conf/local.conf:

MACHINE ??= 'dhcomimx6dl'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_ipk"
EXTRA_IMAGE_FEATURES = "debug-tweaks tools-debug ssh-server-openssh eclipse-debug"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    ABORT,${TMPDIR},100M,1K \
    ABORT,${DL_DIR},100M,1K \
    ABORT,${SSTATE_DIR},100M,1K" 
PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
ASSUME_PROVIDED += "libsdl-native"
CONF_VERSION = "1"
PREFERRED_PROVIDER_jpeg = "libjpeg-turbo"
PREFERRED_PROVIDER_shlib = "libjpeg-turbo"
PREFERRED_PROVIDER_jpeg-native = "libjpeg-turbo-native"
PREFERRED_PROVIDER_virtual/mesa = "mesa"
PREFERRED_PROVIDER_virtual/libgl = "gpu-viv-bin-mx6q"
PREFERRED_PROVIDER_mesa-driver-swrast = "mesa-gl"

BB_NUMBER_THREADS = '2'
PARALLEL_MAKE = '-j 2'

#DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = ""

LICENSE_FLAGS_WHITELIST = " commercial_libav commercial_x264 commercial"

IMAGE_INSTALL_append = " \
	chromium \
	gst-plugins-base \
	gst-plugins-gl \
	gst-fsl-plugin \
	gstreamer1.0-plugins-imx \
	libfslcodec \
	alsa-lib \
	fsl-alsa-plugins \
	pulseaudio \
	libfslvpuwrap \
	libfslparser \
	mpeg2dec \
	vlc \
	x11vnc"

Bitbake!

Bitbake an image like core-image-x11(you need to be in your yocto/build directory):

 $ MACHINE=dhcomimx6dl . ./setup-environment build
 $ bitbake core-image-x11

Note: Bitbake fails with an dependency error. To fix the build edit 'tmp/sysroots/dhcomimx6dl/usr/lib/libQtGui.la' and run bitbake again.

-dependency_libs=' -lEGL -lGAL -DLINUX=1 -DEGL_API_FB=1 -lQtCore -lpthread ' 
+dependency_libs=' -lEGL -lGAL -lQtCore -lpthread ' 

Test your image

execute chromium:

 $ google-crome

execute VLC media player:

 $ vlc

start X11VNC (on default port 5900 is used):

 $ x11vnc &

Note: Connection was verified with ssvnc (sudo apt-get install ssvnc) using SSH.

External References