Chinaunix首页 | 论坛 | 博客
  • 博客访问: 107349
  • 博文数量: 29
  • 博客积分: 447
  • 博客等级: 下士
  • 技术积分: 414
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-05 23:03
个人简介

整天捣鼓嵌入式,兼职搞搞iOS,这么折腾为了啥?都是为了俺的娃!

文章分类

分类: 嵌入式

2016-06-12 22:24:54

1.解压源码
$tar zxvf qt-everywhere-opensource-src-5.5.1.tar.gz
$cd qt-everywhere-opensource-src-5.5.1
2.修改配置文件
修改编译器为对应的交叉编译器:vi qtdbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf
去掉3D功能:vi qt.pro
#addModule(qt3d, qtdeclarative qtimageformats)
#addModule(qtcanvas3d, qtdeclarative)
3.配置及编译
$./configure -prefix /opt/qt-5.5.1 -opensource -release -xplatform linux-arm-gnueabi-g++ \
-no-c++11 -no-opengl -no-xcb -no-dbus -strip -silent -linuxfb -tslib \
-I/opt/tslib-1.4/include -L/opt/tslib-1.4/lib
$make -j2
$sudo make install

4.部署
将编译出来的/opt/qt-5.5.1整个目录拷贝到开发板.
并配置好环境变量,请参考:qt-5.5.1运行环境配置.

5.运行测试程序
$ . /opt/qtenv.sh
$/opt/qt-5.5.1/examples/widgets/widgets/calculator/calculator

注意:静态编译目前移植到开发版上有问题,提示找不到插件linuxfb.
---------------------------------------------------------
参考脚本:
#!/bin/bash
#指定编译平台和安装目录
HOST=arm-linux
PLATFORM=linux-arm-gnueabi-g++
TSLIB_INSTALL_DIR=/opt/tslib-1.4
QT_INSTALL_DIR=/opt/qt-5.5.1

#指定源码根目录
BUILD_ROOT=$PWD
QT_SOURCE=qt-everywhere-opensource-src-5.5.1
QT_ROOT=$BUILD_ROOT/${QT_SOURCE}
TSLIB_SRC=tslib-1.4
TSLIB_ROOT=$BUILD_ROOT/../${TSLIB_SRC}

#指定链接库目录
PKG_CONFIG_PATH=$TSLIB_INSTALL_DIR/lib/pkgconfig:$PKG_CONFIG_PATH
LD_LIBRARY_PATH=$TSLIB_INSTALL_DIR/lib:$LD_LIBRARY_PATH

#编译TSLIB
rm -rf $TSLIB_ROOT
tar zxvf ${TSLIB_ROOT}.tar.gz -C $BUILD_ROOT/..
cd $TSLIB_ROOT
mkdir -p $TSLIB_INSTALL_DIR
./autogen.sh
./configure --prefix=$TSLIB_INSTALL_DIR --host=$HOST --disable-static --enable-shared ac_cv_func_malloc_0_nonnull=yes
make
make install

#编译QT
cd $BUILD_ROOT
rm -rf $QT_ROOT
tar zxvf ${QT_SOURCE}.tar.gz
rm -rf ${QT_ROOT}/qtbase/mkspecs/${PLATFORM}/qmake.conf
cp ${PLATFORM}/qmake.conf ${QT_ROOT}/qtbase/mkspecs/${PLATFORM}/
rm -rf ${QT_ROOT}/qt.pro
cp ${PLATFORM}/qt.pro ${QT_ROOT}/qt.pro

cd $QT_ROOT
./configure -prefix ${QT_INSTALL_DIR} -release -opensource -xplatform ${PLATFORM} -shared \
-silent -no-xcb -no-opengl -no-dbus -no-c++11 -linuxfb -tslib \
-I${TSLIB_INSTALL_DIR}/include -L${TSLIB_INSTALL_DIR}/lib
make -j2
make install

阅读(889) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~