移植Qt5.5.1和QtCreator3.5.1到 Linux + ARM

请见更新版本:

http://blog.csdn.net/deyili/article/details/51012106


移植Qt5.5.1和QtCreator3.5.1到 Linux + ARM

硬件是 NVDIA Tegra K1, 系统是Ubuntu 14.04。

通过atp-get install 可安装 5.2.1,版本太老。Qt官方也没有提供ARM版本,只好自己编译。

经过各种折腾,终于搞定。好记性不如烂笔头,记录下来。

步骤:

1. 下载 Qt5.5.1:http://download.qt.io/official_releases/qt/5.5/5.5.1/single/qt-everywhere-opensource-src-5.5.1.tar.gz

              QtCreator3.5.1:http://download.qt.io/official_releases/qtcreator/3.5/3.5.1/qt-creator-opensource-src-3.5.1.tar.gz

      将以上压缩包保存到Linux分区(ext3, ext4 ...),不能保存到FAT或NTFS分区。

2. tar -zxvf qt-everywhere-opensource-src-5.5.1.tar.gz

3. 先不要着急编译,有几个坑需要填。

   1).  创建以下环境变量:

        export SYSROOT
        export PKG_CONFIG_SYSROOT_DIR=/
        export PKG_CONFIG_LIBDIR=$SYSROOT/usr/lib/arm-linux-gnueabihf/pkgconfig:$SYSROOT/usr/share/pkgconfig:$SYSROOT/usr/lib/pkgconfig
        export PKG_CONFIG_PATH=$SYSROOT/usr/lib/arm-linux-gnueabihf/pkgconfig:$SYSROOT/usr/share/pkgconfig:$SYSROOT/usr/lib/pkgconfig

   2). 修改 qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf,如下:

########################################################

MAKEFILE_GENERATOR      = UNIX
CONFIG                 += incremental
QMAKE_INCREMENTAL_STYLE = sublib

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                = gcc
QMAKE_CXX               = g++
QMAKE_LINK              = g++
QMAKE_LINK_SHLIB        = g++

# modifications to linux.conf
QMAKE_AR                = ar cqs
QMAKE_OBJCOPY           = objcopy
QMAKE_NM                = nm -P
QMAKE_STRIP             = strip
load(qt_config)

################################################

   3). 打开 qt.pro, 注掉 qtcanvas3d, qt3d , qtconnectivity, qtwayland 这几个模块。

   4).  如果要使用摄像头,视频播放等多媒体功能,一定要安装好gstreamer/libgstreamer,可通过apt-get安装。

   5). ./configure -release -opensource -xplatform linux-arm-gnueabi-g++ -prefix /opt/qt551 -no-c++11

4. make

    sudo make install.

    经过漫长的等待,Qt编译成功。

    将安装好的 bin 和 lib 目录 添加到环境变量 PATH 和 LD_LIBRARY_PATH 中去。

    接下来编译QtCreator.

5.tar -zxvf qt-creator-opensource-src-3.5.1.tar.gz

6. 这里也有几个坑需要填

   1). apt-get install botan* .

   2). 将 src/libs/3rdparty/botan/botan.pri 内容修改如下:

INCLUDEPATH *= $$PWD/..
HEADERS += $$PWD/botan.h

DEFINES += USE_SYSTEM_BOTAN
#CONFIG += link_pkgconfig
#PKGCONFIG += botan-1.10
INCLUDEPATH +=  $$/usr/include/botan-1.10
LIBS += /usr/lib/libbotan-1.10.so

    3). 回到刚才编译Qt的目录 qt-everywhere-opensource-src-5.5.1/qttools/src/designer/src,在各个子目录下运行qmake, make 和 sudo make install.

    4). 来到刚才解压的目录 qt-creator-opensource-src, 运行 make.

          又是漫长的等待....编译成功后,不需要安装。


你可能感兴趣的:(嵌入式,C/C++,Linux,Qt)