Hisi3536 移植Qt4.8.5

     从3520DV300的资料中找到了Qt4.8.5 的源码。

1 解压,添加脚本makconf:

#!/bin/sh
./configure \
-prefix /usr/local/Trolltech/QtEmbedded-4.8.5-arm \   这里是源码生成完成后的安装目录
-opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-hi3536v400-g++ \   这里是在qws目录下建立的一个文件夹
-optimized-qmake \
-pch \
-qt-sql-sqlite \
-qt-libjpeg \
-qt-zlib \
-qt-libpng \
-qt-freetype \
-little-endian -host-little-endian \
-no-qt3support \
-no-libtiff -no-libmng \
-no-opengl \
-no-mmx -no-sse -no-sse2 \
-no-3dnow \
-no-openssl \
-no-webkit \
-no-qvfb \
-no-phonon \
-no-nis \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake examples -nomake tools -nomake -nodocs \
-depths 15,16,18,24,32 \
-qt-mouse-pc
#-qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
#-depths all\
#-fast 

执行 ./makconf  如果顺利就可以生成Makefile,然后执行make 就会安装在目录里了。关键没有那么顺利!

进入qws/linux-hi3536v400-g++新建文件qmake.conf 

#
# qmake configuration for building with arm-none-linux-gnueabi-g++
#

include(../../common/linux.conf)
include(../../common/gcc-base-unix.conf)
include(../../common/g++-unix.conf)
include(../../common/qws.conf)

# modifications to g++.conf
QMAKE_CC                = arm-hisiv400-linux-gcc
QMAKE_CXX               = arm-hisiv400-linux-g++
QMAKE_LINK              = arm-hisiv400-linux-g++
QMAKE_LINK_SHLIB        = arm-hisiv400-linux-g++

# modifications to linux.conf
QMAKE_AR                = arm-hisiv400-linux-ar cqs
QMAKE_OBJCOPY           = arm-hisiv400-linux-objcopy
QMAKE_STRIP             = arm-hisiv400-linux-strip

load(qt_config)

在编译前确定环境变量里面有相应的编译器!另一个文件直接复制别的文件夹下就行。

2.make执行过程中  出错主要是编译器版本的替换问题:

find -name 'Makefile' | xargs perl -pi -e 's|arm-hisiv300|arm-hisiv400|g'    将部分Makefile批量替换v300 ->v400

3.make 完成后make install   到此安装完成!

4. 打包所有库:

        tar -zcvf  QtEmbedded-4.8.5-arm.tar.gz   QtEmbedded-4.8.5-arm

5.解压到网络文件系统根目录,挂载到开发板的 /mnt  目录下

        此时Qt库目录位于开发板/mnt/QtEmbedded-4.8.5-arm 下

6.设置开发板Qt相关的环境变量

export MOUNT_DIR=/mnt
export QTDIR=$MOUNT_DIR/QtEmbedded-4.8.5-arm
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QWS_KEYBOARD="TTY:/dev/tty1"
export QT_QWS_FONTDIR=$QTDIR/lib/fonts
执行   ./helloworld -qws

在运行Qt之前还要写个程序来设置屏幕:

SAMPLE_HIFB_COMPRESS(void *pData)

 /* 2. open compress */
    bEnable = HI_FALSE;
    s32Ret = ioctl(pstInfo->fd, FBIOPUT_COMPRESSION_HIFB, &bEnable);
    if (s32Ret < 0)
    {
        SAMPLE_PRT("FBIOPUT_COMPRESSION_HIFB failed!\n");
        close(pstInfo->fd);
        return HI_NULL;
    }
 

 

 


 

 

 

 

 

你可能感兴趣的:(linux)