Login procedures have been improved. Check this page for details.

Devices/Broadcom97420

From QtProject
< Devices
Revision as of 17:09, 4 April 2012 by Shrikantd (Talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Reference Software

- Phase 5.0 Reference software (refsw_release_97420_20100825.src.tgz)
- Phase 2.5 and Phase 3.0 of DirectFB 1.4.1
- Toolchain is stbgcc 4.4.5-1.3 (modified by Broadcom)
- Linux kernel is stblinux-2.6.31-2.5 (modified by Broadcom)

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.7 DirectFB / QWS

1 Obtain qt-4.7.0 release from Qt Download site and extract it in a working folder
2 Create folder named "linux-97420c0-mipsel-uclibc-g++" in <qt-4.7.0-sources>/mkspecs/qws
3 In file <qt_sources>/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp, comment out line "surface->SetPorterDuff(surface, DSPD_DST);"
4 Obtain 7420 specific files namely, qmake.conf and qplatformdefs.h from qt-platform-mkspecs git (look for folder "4.7/qws/linux-97420c0-mipsel-uclibc-g++") and copy it in newly created folder in
above step 2
5 Set following environment variables in the shell before configuring/building Qt,
export APPLIBS=<PATH Of Base Working Directory where Reference Software is extracted>/AppLibs
export BCM97420C0_DFB_PATH=$APPLIBS/opensource/directfb/bin/DirectFB-1.4.1_release_build.97420C0/usr/local
export BCM_DEV_PATH=$APPLIBS/opensource
export BCM_DEPLOYED_PATH=$APPLIBS/target/97420c0.mipsel-linux-uclibc.release
6 Configure Qt as,
$configure -embedded mips -xplatform qws/linux-974250c0-mipsel-uclibc-g++ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -qt-gfx-directfb -webkit

-confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt-dfb-97420C0-rel

7 Build Qt as,
$ make
8 Install Qt on host as,
$ make install

Building Qt apps

1 After the Qt build succeeds set following environment variables on host before building any Qt Apps for the above build,
QTDIR=/usr/local/qt-installs/qt-dfb-97420C0-rel
PATH=/usr/local/qt-installs/qt-dfb-97420C0-rel/bin:$PATH
2 Ensure that following environment variables in the shell are set,
export APPLIBS=<PATH Of Base Working Directory where Reference Software is extracted>/AppLibs
export BCM97420C0_DFB_PATH=$APPLIBS/opensource/directfb/bin/DirectFB-1.4.1_release_build.97420C0/usr/local
export BCM_DEV_PATH=$APPLIBS/opensource
export BCM_DEPLOYED_PATH=$APPLIBS/target/97420c0.mipsel-linux-uclibc.release
3 Invoke qmake on the applications .pro file
$ qmake <application>.pro
4 Build the application sources as,
$ make

Running Qt apps on target

1 Ensure that folder "qt-installs/qt-dfb-97420C0-rel" is copied on target file system at "/usr/local"
Note - after copying, the path should appear as "/usr/local/qt-installs/qt-dfb-97420C0-rel"
2 Copy the application binary and other required resource files on target file-system, at say "/root"
3 On target, goto directory containing directfb startup script as,
# cd /usr/local/bin/directfb/1.4
4 Install board specific modules and create device nodes by running "rundfb.sh" as,
# ./rundfb.sh install
5 Launch application using same rundfb.sh script as,
# ./rundfb.sh /root/app1/app1 -qws -display directfb
Personal tools
license
Attribution-ShareAlike 2.5 Unported