Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Broadcom97425/BCM7425-Qt4dot8-eglfs-QPA: Difference between revisions
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 ''' | # 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 ''' | # 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 | |||
= Qt 4.8 eglfs / QPA = | = Qt 4.8 eglfs / QPA = | ||
# 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 | # 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 | ||
# Obtain 7425 specific files from [http://gitorious.org/qt-platform-mkspecs qt-platform-mkspecs git ] (look for folder | # Obtain 7425 specific files from [http://gitorious.org/qt-platform-mkspecs qt-platform-mkspecs git ] (look for folder "4.8") | ||
# Copy folder named | # Copy folder named "linux-7425nxs-mipsel-uclibc-g+''" to <qt-4.8.0-sources>/mkspecs/qpa | ||
# 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> | |||
# Apply patch "7425nxs-eglfs.patch" to eglfs Qt Lighthouse Driver located at <qt-4.8.0-sources>/src/plugins/platforms/eglfs | |||
<code> | |||
# Copy the application binary and other required resource files on target file-system, say | $ cd <qt-4.8.0-sources>/src/plugins/platforms/eglfs | ||
# Locate a shell script named | $ patch -p4 < 7425nxs-eglfs.patch | ||
</code> | |||
# Configure Qt as, | |||
<code> | |||
$ configure -qpa -arch mips -xplatform qpa/linux-nxs-mipsel-uclibc-g''+ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -opengl -webkit -confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt480ga-nxs-qpa-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-qpa-rel | |||
'''''' PATH=/usr/local/qt-installs/qt480ga-nxs-qpa-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-qpa-rel" is copied on target file system at "/usr/local" | |||
'''''' Note- after copying, the path should appear as "/usr/local/qt-installs/qt480ga-nxs-qpa-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. | # Copy it in your app folder and edit the paths inside it. | ||
# Launch application using same | # Launch application using same "start" script as, | ||
# ./start /root/app1/app1 -platform eglfs | <code> | ||
# ./start /root/app1/app1 -platform eglfs | |||
</code> | |||
* NOTE: Before executing any Qt applications on target copy | * NOTE: Before executing any Qt applications on target copy "qt-installs/qt480ga-nxs-qpa-rel" on target at usr/local on target file system |
Revision as of 11:09, 25 February 2015
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)
- 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
Qt 4.8 eglfs / QPA
- Obtain qt-4.8.0 release from Qt Download site and extract it in a working folder
- Obtain 7425 specific files from qt-platform-mkspecs git (look for folder "4.8")
- Copy folder named "linux-7425nxs-mipsel-uclibc-g+" to <qt-4.8.0-sources>/mkspecs/qpa
- 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
- Apply patch "7425nxs-eglfs.patch" to eglfs Qt Lighthouse Driver located at <qt-4.8.0-sources>/src/plugins/platforms/eglfs
$ cd <qt-4.8.0-sources>/src/plugins/platforms/eglfs
$ patch -p4 < 7425nxs-eglfs.patch
- Configure Qt as,
$ configure -qpa -arch mips -xplatform qpa/linux-nxs-mipsel-uclibc-g''+ -depths 16,24,32 -no-largefile -no-accessibility -opensource -verbose -system-zlib -system-libpng -system-libjpeg -system-freetype -fast -opengl -webkit -confirm-license -release -make libs -xmlpatterns -exceptions -no-qt3support -prefix /usr/local/qt-installs/qt480ga-nxs-qpa-rel
- Build Qt as,
$ make
- Install Qt on host as,
$ make install
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-qpa-rel ' PATH=/usr/local/qt-installs/qt480ga-nxs-qpa-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)
$ qmake <application>.pro
- Build the application sources as,
$ make
h1. Running Qt apps on target
- Ensure that folder "qt-installs/qt480ga-nxs-qpa-rel" is copied on target file system at "/usr/local"
' Note- after copying, the path should appear as "/usr/local/qt-installs/qt480ga-nxs-qpa-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,
# ./start /root/app1/app1 -platform eglfs
- NOTE: Before executing any Qt applications on target copy "qt-installs/qt480ga-nxs-qpa-rel" on target at usr/local on target file system