Broadcom97425/BCM7425-Qt4dot8-eglnullws-QWS: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
h1. Building AppLibs/RefSW for Qt
h1. Building AppLibs/RefSW for Qt


# Locate document named '''"BroadcomReferencePlatformSetup.pdf"''' (Usually this will be inside a tar ball named on the lines of refsw_release_<chip-name>''<date>.tgz)<br /># Follow the instructions in '''"BroadcomReferencePlatformSetup.pdf"''' to setup the Linux build machine<br /># Locate document named '''"AppLibsInstallationBuildGuide.pdf"''' (Usually this will be inside a tar ball named on the lines of applibs_release''<date>.tgz)
# Locate document named '''"BroadcomReferencePlatformSetup.pdf"''' (Usually this will be inside a tar ball named on the lines of refsw_release_<chip-name>''<date>.tgz)
# Follow the instructions in '''"BroadcomReferencePlatformSetup.pdf"''' to setup the Linux build machine
# Locate document named '''"AppLibsInstallationBuildGuide.pdf"''' (Usually this will be inside a tar ball named on the lines of applibs_release''<date>.tgz)
# Follow the instructions in '''"AppLibsInstallationBuildGuide.pdf"''' to build Applibs
# Follow the instructions in '''"AppLibsInstallationBuildGuide.pdf"''' to build Applibs


= Qt 4.8 eglnullws / QWS =
= Qt 4.8 eglnullws / QWS =


This details steps to build Qt with Qt's OpenGL graphics driver.<br><br />This OpenGL graphics driver supports execution of Single Qt app that uses QGLWidget as full-screen (examples/opengl/hello_gles2)<br /># Obtain qt-4.8.0 release from [http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.8.0.tar.gz Qt Download site] and extract it in a working folder<br /># Obtain 7425 specific files from [http://gitorious.org/qt-platform-mkspecs qt-platform-mkspecs git ] (look for folder "4.8")<br /># Copy folder named "linux-7425nxs-mipsel-uclibc-g+''" to <qt-4.8.0-sources>/mkspecs/qws<br /># Set following environment variables in the shell before configuring/building Qt,<br />'''''' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs<br />'''''' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus<br />'''''' DEBUG=n<br /><code><br />$ export BCM_APPLIBS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/AppLibs<br />$ export BCM_NEXUS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/nexus<br /></code>
This details steps to build Qt with Qt's OpenGL graphics driver.<br>
<br /># Apply patch "7425nxs-eglnullws.patch" to eglnullws Qt GFX Driver located at <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws<br /><code><br />$ cd <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws<br />$ patch -p5 < 7425nxs-eglnullws.patch<br /></code>
This OpenGL graphics driver supports execution of Single Qt app that uses QGLWidget as full-screen (examples/opengl/hello_gles2)
<br /># Configure Qt as,<br /><code><br />$ configure -embedded mips -xplatform qws/linux-7425nxs-mipsel-uclibc-g''+ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -plugin-gfx-eglnullws -qt-gfx-vnc -opengl -webkit -confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt480ga-nxs-qws-rel<br /></code>
# Obtain qt-4.8.0 release from [http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.8.0.tar.gz Qt Download site] and extract it in a working folder
<br /># Build Qt as,<br /><code><br />$ make<br /></code>
# Obtain 7425 specific files from [http://gitorious.org/qt-platform-mkspecs qt-platform-mkspecs git ] (look for folder "4.8")
<br /># Install Qt on host as,<br /><code><br />$ make install<br /></code>
# Copy folder named "linux-7425nxs-mipsel-uclibc-g+''" to <qt-4.8.0-sources>/mkspecs/qws
# Set following environment variables in the shell before configuring/building Qt,
'''''' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs
'''''' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus
'''''' DEBUG=n
<code>
$ export BCM_APPLIBS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/AppLibs
$ export BCM_NEXUS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/nexus
</code>


<br />h1. Building Qt apps
# Apply patch "7425nxs-eglnullws.patch" to eglnullws Qt GFX Driver located at <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws
<br /># After the Qt build succeeds, set following environment variables on host before building any fullscreen OpenGL Qt App for the above build,<br />'''''' QTDIR=/usr/local/qt-installs/qt480ga-nxs-qws-rel<br />'''''' PATH=/usr/local/qt-installs/qt480ga-nxs-qws-rel/bin:$PATH
<code>
<br /># Ensure that following environment variables in the shell are set,<br />'''''' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs<br />'''''' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus<br />'''''' BCM_TARGET_LIBDIR=<path-till-nfsrootfs-base-folder>/romfs/lib<br />'''''' DEBUG=n
$ cd <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws
<br /># Invoke qmake on the applications .pro file (<qt-4.8.0-sources>/examples/opengl/hello_gles2)<br /><code><br />$ qmake <application>.pro<br /></code>
$ patch -p5 < 7425nxs-eglnullws.patch
<br /># Build the application sources as,<br /><code><br />$ make<br /></code>
</code>
<br />h1. Running Qt apps on target
 
<br /># Ensure that folder "qt-installs/qt480ga-nxs-qws-rel" is copied on target file system at "/usr/local"<br />'''''' Note- after copying, the path should appear as "/usr/local/qt-installs/qt480ga-nxs-qws-rel"<br /># Copy the application binary and other required resource files on target file-system, say "/root"<br /># Locate a shell script named "start" in "/bin" folder on target.<br /># Copy it in your app folder and edit the paths inside it.<br /># Launch application using same "start" script as,<br /><code><br /># ./start /root/app1/app1 -qws -display eglnullws<br /></code>
# Configure Qt as,
<code>
$ configure -embedded mips -xplatform qws/linux-7425nxs-mipsel-uclibc-g''+ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -plugin-gfx-eglnullws -qt-gfx-vnc -opengl -webkit -confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt480ga-nxs-qws-rel
</code>
 
# Build Qt as,
<code>
$ make
</code>
 
# Install Qt on host as,
<code>
$ make install
</code>
 
 
h1. Building Qt apps
 
# After the Qt build succeeds, set following environment variables on host before building any fullscreen OpenGL Qt App for the above build,
'''''' QTDIR=/usr/local/qt-installs/qt480ga-nxs-qws-rel
'''''' PATH=/usr/local/qt-installs/qt480ga-nxs-qws-rel/bin:$PATH
 
# Ensure that following environment variables in the shell are set,
'''''' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs
'''''' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus
'''''' BCM_TARGET_LIBDIR=<path-till-nfsrootfs-base-folder>/romfs/lib
'''''' DEBUG=n
 
# Invoke qmake on the applications .pro file (<qt-4.8.0-sources>/examples/opengl/hello_gles2)
<code>
$ qmake <application>.pro
</code>
 
# Build the application sources as,
<code>
$ make
</code>
 
h1. Running Qt apps on target
 
# Ensure that folder "qt-installs/qt480ga-nxs-qws-rel" is copied on target file system at "/usr/local"
'''''' Note- after copying, the path should appear as "/usr/local/qt-installs/qt480ga-nxs-qws-rel"
# Copy the application binary and other required resource files on target file-system, say "/root"
# Locate a shell script named "start" in "/bin" folder on target.
# Copy it in your app folder and edit the paths inside it.
# Launch application using same "start" script as,
<code>
# ./start /root/app1/app1 -qws -display eglnullws
</code>

Revision as of 11:21, 25 February 2015

h1. Building AppLibs/RefSW for Qt

  1. Locate document named "BroadcomReferencePlatformSetup.pdf" (Usually this will be inside a tar ball named on the lines of refsw_release_<chip-name><date>.tgz)
  2. Follow the instructions in "BroadcomReferencePlatformSetup.pdf" to setup the Linux build machine
  3. Locate document named "AppLibsInstallationBuildGuide.pdf" (Usually this will be inside a tar ball named on the lines of applibs_release<date>.tgz)
  4. Follow the instructions in "AppLibsInstallationBuildGuide.pdf" to build Applibs

Qt 4.8 eglnullws / QWS

This details steps to build Qt with Qt's OpenGL graphics driver.
This OpenGL graphics driver supports execution of Single Qt app that uses QGLWidget as full-screen (examples/opengl/hello_gles2)

  1. Obtain qt-4.8.0 release from Qt Download site and extract it in a working folder
  2. Obtain 7425 specific files from qt-platform-mkspecs git (look for folder "4.8")
  3. Copy folder named "linux-7425nxs-mipsel-uclibc-g+" to <qt-4.8.0-sources>/mkspecs/qws
  4. Set following environment variables in the shell before configuring/building Qt,

' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs ' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus ' DEBUG=n

$ export BCM_APPLIBS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/AppLibs
$ export BCM_NEXUS_PATH=/home/qtnokia/WorkDir/97425-P1/stb-rs_p2-al_p2dot1/nexus
  1. Apply patch "7425nxs-eglnullws.patch" to eglnullws Qt GFX Driver located at <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws
$ cd <qt-4.8.0-sources>/src/plugins/gfxdrivers/eglnullws
$ patch -p5 < 7425nxs-eglnullws.patch
  1. Configure Qt as,
$ configure -embedded mips -xplatform qws/linux-7425nxs-mipsel-uclibc-g''+ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -plugin-gfx-eglnullws -qt-gfx-vnc -opengl -webkit -confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt480ga-nxs-qws-rel
  1. Build Qt as,
$ make
  1. Install Qt on host as,
$ make install


h1. Building Qt apps

  1. After the Qt build succeeds, set following environment variables on host before building any fullscreen OpenGL Qt App for the above build,

' QTDIR=/usr/local/qt-installs/qt480ga-nxs-qws-rel ' PATH=/usr/local/qt-installs/qt480ga-nxs-qws-rel/bin:$PATH

  1. Ensure that following environment variables in the shell are set,

' BCM_APPLIBS_PATH=<path-till-Applibs-folder>/AppLibs ' BCM_NEXUS_PATH=<path-till-Applibs-folder>/nexus ' BCM_TARGET_LIBDIR=<path-till-nfsrootfs-base-folder>/romfs/lib ' DEBUG=n

  1. Invoke qmake on the applications .pro file (<qt-4.8.0-sources>/examples/opengl/hello_gles2)
$ qmake <application>.pro
  1. Build the application sources as,
$ make

h1. Running Qt apps on target

  1. Ensure that folder "qt-installs/qt480ga-nxs-qws-rel" is copied on target file system at "/usr/local"

' Note- after copying, the path should appear as "/usr/local/qt-installs/qt480ga-nxs-qws-rel"

  1. Copy the application binary and other required resource files on target file-system, say "/root"
  2. Locate a shell script named "start" in "/bin" folder on target.
  3. Copy it in your app folder and edit the paths inside it.
  4. Launch application using same "start" script as,
# ./start /root/app1/app1 -qws -display eglnullws