零、配置Arm-gcc
在http://releases.linaro.org/components/toolchain/binaries/4.9-2016.02/arm-linux-gnueabihf/ 下 gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf.tar.xz
解壓後 在/home/sfe1012/.bashrc文件的最後面添加
export PATH=/home/sfe1012/MrcMoveProject/tools/gcc-linaro-4.9-2016.02-x86_64_arm-linux-gnueabihf/bin:$PATH
命令:source .bashrc
一、移植tslib
下載:https://github.com/kergoth/tslib
1、./autogen.sh2、./configure CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ --host=arm-linux-gnueabihf --prefix=/home/sfe1012/MrcMoveProject/QtMove/tslib-master/tslib/ ac_cv_func_malloc_0_nonnull=yes
3、 make
4、sudo make install
二、移植QT
到QT官網 下載 qt-everywhere-opensource-src-5.8.0
1、更改文件 /qt-everywhere-opensource-src-5.8.0/qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf 如下:
#
# qmake configuration for building with arm-linux-gnueabi-g++
#
MAKEFILE_GENERATOR = UNIX
CONFIG += incremental
QMAKE_INCREMENTAL_STYLE = sublib
QT_QPA_DEFAULT_PLATFORM = linux #eglfs
QMAKE_CFLAGS_RELEASE += -O2 -march=armv7-a
QMAKE_CXXFLAGS_RELEASE += -O2 -march=armv7-a
include(../common/linux.conf)
include(../common/gcc-base-unix.conf)
include(../common/g++-unix.conf)
# modifications to g++.conf
QMAKE_CC = arm-linux-gnueabihf-gcc
QMAKE_CXX = arm-linux-gnueabihf-g++
QMAKE_LINK = arm-linux-gnueabihf-g++
QMAKE_LINK_SHLIB = arm-linux-gnueabihf-g++
# modifications to linux.conf
QMAKE_AR = arm-linux-gnueabihf-ar cqs
QMAKE_OBJCOPY = arm-linux-gnueabihf-objcopy
QMAKE_NM = arm-linux-gnueabihf-nm -P
QMAKE_STRIP = arm-linux-gnueabihf-strip
load(qt_config)
2、創建configure 自動配置文件 /qt-everywhere-opensource-src-5.8.0/autoConfigure.sh 如下:
#!/bin/sh
./configure \
-v \
-prefix /home/sfe1012/MrcMoveProject/QtMove/qt-everywhere-opensource-src-5.8.0/Arm-Qt \
-release \
-c++std c++1z \
-c++std c++14 \
-c++std c++11 \
-opensource \
-make libs \
-xplatform linux-arm-gnueabi-g++ \
-optimized-qmake \
-pch \
-no-sql-psql \
-qt-libjpeg \
-qt-zlib \
-no-opengl \
-skip qt3d \
-skip qtcanvas3d \
-skip qtpurchasing \
-no-sse2 \
-no-openssl \
-no-cups \
-no-glib \
-no-iconv \
-nomake examples \
-nomake tools \
-skip qtvirtualkeyboard \
-I/home/sfe1012/MrcMoveProject/QtMove/tslib-master/tslib/include \
-L/home/sfe1012/MrcMoveProject/QtMove/tslib-master/tslib/lib
exit
命令:chmod 777 qt.configure.sh
./autoConfigure.sh
3、編譯 安裝
make -j4 && make install
4、下載中英文字庫
http://font.ubuntu.com/ 下載字體庫 ubuntu-font-family-0.83.zip
https://sourceforge.net/projects/wqy/files/wqy-zenhei-snapshot/ 下載 wqy-zenhei-0.9.46-May.tar.bz2
5、配置arm開發板
將/home/sfe1012/MrcMoveProject/QtMove/qt-everywhere-opensource-src-5.8.0/Arm-Qt和/home/sfe1012/MrcMoveProject/QtMove/tslib-master/tslib拷貝到開發板的 /opt/Qt5.8和 /opt/tslib 的目錄下。將字體庫解壓後的文件拷貝到/opt/Qt5.8/lib/fonts 目錄下
配置/etc/profile文件 如下:
export TSLIB_ROOT=/opt/tslib
export QT_ROOT=/opt/Qt5.8
export TSLIB_TSDEVICE=/dev/input/ts0
export TSLIB_TSEVENTTYPE=input
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export QWS_MOUSE_PROTO=tslib:/dev/input/ts0
export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:$QT_ROOT/lib:$TSLIB_ROOT/lib:$LD_LIBRARY_PATH
export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_QPA_FONTDIR=$QT_ROOT/lib/fonts
#export QT_QPA_GENERIC_PLUGINS=tslib
三、配置主機的QtCreator開發環境
安裝qtcreator
進入qtcreator開發環境
在菜單中選擇Tools——Options,在彈出的對話框中,選擇Build & Run,選擇標籤Compilers,按下圖設置,選擇C++交叉編譯器,如下圖所示:
切換到Qt Versions標籤,點擊“Add”按鈕,選擇qmake,如圖所示:
選擇完成,按“OK”按鈕,設置如圖所示:
切換到Kits標籤,點擊“Add”按鈕,然後設置如下圖所示:
用法 在Qt-creator 的projects 的功能下可以選擇添加的 編譯器
四、微雪屏幕配置
直接修改config.txt文件
在樹莓派網站下載RASPBIAN鏡像,並在config.txt文件的最後加上以下代碼即可
- max_usb_current=1
- hdmi_group=2
- hdmi_mode=87
- hdmi_cvt 1024 600 60 6 0 0 0