zoukankan      html  css  js  c++  java
  • linux上安装Qt

    先说说Qt源码包,有x11的,又有embedded的,还有everywhere的。安装x11,可以开发在pc机下运行的应用程序,并且会生成一些Qt开发工具designer和qvfb。安装embedded ,可以开发在开发板上运行的Qt应用程序。使用everywhere,需要解压三份,使用不同的configure参数可以安装不同平台的Qt,包括前面说的两种。分别为x11,x86,arm。x86的程序可以运行在qvfb里。这就可以不用开发板了。如果是windows装Qt的话,只需要下载个exe文件直接安装就行了。要配置环境变量。(最后再说)

    再说说windows和linux下的Qt程序。

    windows 下的Qt和Linux下的Qt可以一样用的,只要在新的系统里再重新使用qmake -project ;qmake;make(windows下是mingw32-make)三个命令编译一下就行了。一定要设置好环境变量啊,否则找不到命令

     

    一、.嵌入式Qt程序开发环境的搭建。

    第一步:PC机安装Qt。

    ftp://ftp.qt.nokia.com/qt/source下载Qt的源码包。qt-everywhere-opensource-src-4.8.1.tar.gz放到/root/Qt目录下。

    tar -zxvf qt-everywhere-opensource-src-4.8.1.tar.gz命令解压,将解压后的目录名称改为qtx11.

    #cd qtx11

    #./configure要安装这三个才能正常使用yum install libX11-dev libXext-dev libXtst-dev

     

    #gmake(这一步的时间相当长,两三个小时)

    #gmake install

    这是就安装好了,安装在/usr/local/Trolltech/Qt-4.8.1

    #export PATH="/usr/local/Trolltech/Qt-4.8.1/bin:$PATH"

    #qmake -v(如能输出版本号,则说明安装成功)

     

    接下来编译qvfb。

    #cd /root/Qt/qtx11/tools/qvfb

    ----------------------------------------------------------------------------------------

    #gmake  (install libpng-dev)

    #cp /root/Qt/qtx11/bin/qvfb /bin

    #qvfb(如果能出现一个虚拟窗口,那么说明编译成功了)

    -------------------------------------------------------------------------------------------------

    ************************************************************************************************

     

    第二步:安装Qt for x86

    #cd /root/Qt/

    #tar -zxvf qt-everywhere-opensource-src-4.8.1.tar.gz命令解压,将解压后的目录名称改为qtx86.

    #cd qtx86

    #./configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb(这个命令可以使应用程序在qvfb里运行,节省开发板)

    #gmake(很长时间)

    #gmake install

    安装目录在/usr/local/Trolltech/QtEmbedded-4.8.1/

    #export PATH="/usr/local/Trolltech/QtEmbedded-4.8.1/bin:$PATH"

    #qmake –v (如能输出版本号,则说明安装成功)

    将上一步中编译好的qvfb复制到/usr/local/Trolltech/QtEmbedded-4.8.1/bin中。

     

    ***********************************************************************************************

     

    第三步:安装交叉编译工具,arm-linux-gcc,我的版本是4.3.2

    #tar xvzf arm-linux-gcc-4.3.2.tgz -C / (C需要大写,解压后安装在/usr/local/arm/4.3.2/

    #vi /etc/profile (添加PATH)

    添加如下内容exportPATH="$PATH:/usr/local/arm/4.3.2/bin"

    #arm-linux-gcc -v (如果输出版本号说明安装成功)

     

    **********************************************************************************************

     

    第四步:交叉编译tslib-1.4

    下载tslib-1.4.tar.gz放到/root/Qt/目录下

    #cd /root/Qt/

    #tar zxvf tslib-1.4.tar.gz

    #cd tslib

    #export CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc //设定C编译器

    #export CXX=/usr/local/arm/4.3.2/bin/arm-linux-g++ //设定C++编译器

    #./autogen.sh (如果运行有错误则需要安装autoconf、automake、libtool (如yum installautoconf))

    #echo"ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache //避免检查ac_cv_func_malloc_0_nonnull

    # ./configure --host=arm-linux --cache-file=arm-linux.cache-prefix=/usr/local/tslib

    #gmake

    #gmake install (安装在/usr/local/tslib里面)

    #vi /usr/local/tslib/etc/ts.conf (修改ts.conf) 最后内容如下:

    module_raw input /

    /前面的空格记得去掉,没去掉也是不能用的

    module pthres pmin=1

    module variance delta=30

    module dejitter delta=100

    module linear

     

    (以下是在对应的开发版上使用,)

     

    将上面整个/usr/local/tslib的内容下载到开发版里的对应路径下在(/usr/local/)

     

    配置环境变量 :vi /etc/profile, 添加下面几行

     

    export TSLIB_ROOT=/usr/local/tslib

    export TSLIB_TSDEVICE=/dev/input/event0

    export TSLIB_CALIBFILE=/etc/pointercal

    export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf

    export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts

    export TSLIB_FBDEVICE=/dev/fb0

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib

     

    source /etc/profile

    可以把/usr/local/tslib/bin 里的ts_calilbrate 跟ts_test 拷贝到/bin 里,执行ts_calibrate 跟 ts_test命令

     

    **********************************************************************************************

     

    第五步:安装Qt for arm

    #cd /root/Qt/

    #tar zxvf qt-everywhere-opensource-src-4.8.1.tar.gz命令解压,将解压后的目录名称改为qtARM.

    #cd qtARM

    ./configure -embedded arm -xplatform qws/linux-arm-g++-static -qt-libtiff -qt-libmng -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib-prefix /usr/local/Trolltech/Qt-4.8.1-arm_static

    红色的表示静态编译多加的参数,非静态编译可以去掉

    #//./configure –embedded arm –xplatform qws/linux-arm-g++ -qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib

    #gmake

    #gmake install

    安装目录在/usr/local/qt-4.7.3-linux-arm-install

    #export PATH=”/usr/local/qt-4.7.3-linux-arm-install/bin:$PATH”

    然后输入#qmake –v(如能输出版本号,则说明安装成功)

     

    **********************************************************************************************

     

    第六步:建立三个文件,用于三个环境变量的设置

     

    #vi ~/.setenv-qtx11.sh

    内容如下

    export PATH=/usr/local/Trolltech/Qt-4.8.1/bin:$PATH

    export QTDIR=/usr/local/Trolltech/Qt-4.8.1/

    export LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.8.1/lib:$LD_LIBRARY_PATH

    export QMAKESPEC=usr/local/Trolltech/QtEmbedded-4.8.1/mkspecs/linux-g++

     

    #vi ~/.setenv-qtx86.sh

    内容如下

    export PATH=/usr/local/Trolltech/QtEmbedded-4.8.1-arm/bin:$PATH

    export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.8.1-arm/

    exportLD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.8.1-arm/lib:$LD_LIBRARY_PATH

    export QMAKESPEC=usr/local/Trolltech/QtEmbedded-4.8.1/mkspecs/linux-g++

     

     

    #vi ~/.setenv-qtARM.sh

    内容如下

    export PATH=/usr/local/Trolltech/QtEmbedded-4.8.1/bin:$PATH

    export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.8.1/

    export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.8.1/lib:$LD_LIBRARY_PATH

    export QMAKESPEC=usr/local/Trolltech/QtEmbedded-4.8.1-arm/mkspecs/linux-g++

     

    **********************************************************************************************

     

    接下来是如何使用:

    假设已经有一个工程目录是hello。

    (1)想在电脑上运行。

    #source ~/.setenv-qtx11(使环境变量生效)

    #cd hello

    #qmake -project

    #qmake

    #make

    #./可执行文件

    这样就可以了

    (2)想在qvfb上运行

    #source ~/.setenv-qtx86(使环境变量生效)

    #cd hello

    #qmake -project

    #qmake

    #make

    #qvfb &(打开qvfb,如果出错的话,就打开x11里的qvfb)

    #./可执行文件 -qws

    (3)想在开发板上运行

    #source ~/.setenv-qtARM(使环境变量生效)

    #cd hello

    #qmake -project

    #qmake

    #make

    这时的可执行文件就只能在开发板运行了。下载到开发板

     

    开发板里需要有Qt的库,直接从pc机里拷过来就行了,,将/usr/local/Trolltech/QtEmbedded-4.8.1/lib下的libQtGui.so*libQtCore.so*libQtNetwork.so*复制到开发板目录的/usr/lib目录下。将交叉编译器lib目录下的libstdc++.so*libpng.so*复制到开发板目录/usr/lib目录下。/usr/local/Trolltech/QtEmbedded-4.8.1-arm/lib/usr/local/arm/4.4.1/arm-none-linux-gnueabi/libc/usr/lib里,用locate找出来的

     

    设置开发板环境变量

    #export LD_LIBRARY_PATH=/usr/local/tslib/lib:/usr/lib/:$LD_LIBRARY_PATHLD_LIBRARY_PATH表示动态目录)

     

    这时可以执行编译好的Qt程序了。到程序所在目录下再执行

    ./可执行文件 -qws

    提示错误:QFontDatabase: Cannot find font directory /usr/local/Trolltech/QtEmbedded-4.8.1-arm/lib/fonts - is Qt installed correctly?

    解决办法:

    mkdir /usr/lib/fonts

    export QT_QWS_FONTDIR=/usr/lib/fonts

    成功运行!

    上述内容为linux下的环境配置。

    假设windows下安装的是Qt-2009-05,安装目录在D:/Qt/2009.05/

    在我的电脑->属性->高级->环境变量 ,编辑path变量。添加如下内容

    ;D:\Qt\2009.05\mingw\bin;D:\Qt\2009.05\qt\bin

    这样就可以使用qmake -project、qmake、mingw32-make命令了

  • 相关阅读:
    基于 BP 神经网络的识别手写体数字
    【science封面文章】Human-level concept learning through probabilistic program induction
    漫谈小样本的类人概念学习与大数据的深度强化学习
    Setting up a Deep Learning Machine from Scratch (Software)
    Building Apache Thrift on CentOS 6.5¶
    ---Ubuntu 14.04下配置caffe---
    markdown基本语法说明
    Andrew ng清华报告听后感
    Median of Two Sorted Arrays
    LeetCode Question Difficulty Distribution
  • 原文地址:https://www.cnblogs.com/start530/p/3834414.html
Copyright © 2011-2022 走看看