写在前面.......这个教程好像比较早一点了,现在介绍一个新的思路:

整体参见如下步骤(for zedboard):

1.首先下载qt-opensource-linux.run文件,然后跟在Windows下安装程序一样,双击即可出现图像安装界面。而且,里面会附带qtcreater,不用另行安装。这个时候桌面版Qt已经构建好了!

  可参考如下链接:https://blog.csdn.net/xqhrs232/article/details/63251450

2.如果需要编译出arm平台下运行的qt程序,则接着安装qt-everywhere-opensource-src,即进行下面的步骤(一),省去步骤(二)。如果不需要就已经结束了qt的安装和环境构建。

一、安装QT Library:

1,下载qt安装包(压缩包)

2,从Windows上复制到ubuntu下的指定目录,并解压tar xzvf qt-everywhere-opensource-src-4.8.6.tar.gz

3,安装一个编译qt时要用的东西sudo apt-get install g++(也可以在安装之前输入g++ -v,看一下是否已经安装过)

4,安装以下三个库文件sudo apt-get install libx11-dev libxext-dev libxtst-dev(如果已经安装过,会有提示)

5,使用cd命令进入解压后的文件夹cd /../qt-everywhere-opensource-src-4.8.6  (..表示自己放置的具体目录)

6,里面有个configure.exe文件,执行它 ./configure (注意不要.exe)

7,接着选择 o —— 代表开源版,然后输入yes进行漫长的等待

8,然后输入make,这样会生成QT库,同时编译所有演示程序

9,QT编译完成后,安装QT,注意需要root权限,sudo make install

10,QT安装完毕后,首先进入QT安装目录测试QT是否安装成功 cd /usr/local/Trolltech/Qt-4.8.6/bin,然后输入 ./qmake -v,如果出现Qmake版本信息,则表明QT已经安装成功。

11,设置环境变量。执行gedit ~/.bashrc 添加如下内容:

QTDIR=/usr/local/Trolltech/Qt-4.8.6/
PATH=$QTDIR/bin:$PATH
MANPATH=$QTDIR/doc/man:$MANPATH
LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export QTDIR PATH MANPATH LD_LIBRARY_PATH
之后重启。

12,接下来就可以按照
  qmake -project 。。。
  qmake 。。。
  make  。。。

的步骤执行qt程序了。

后续问题.............

在linux虚拟机中,使用qtcreator创建工程时,在项目菜单栏中,发现没有Applications这个选项。(如果是单独装qtlibrary和qtcreate可能会有这个问题,否则能自动检测到版本)

原因:没有添加Qt版本(qmake路径)!!!

解决方法:找到菜单栏的Tools选项,然后找到build & run选项,再找到Qt Versions选项,最后手动设置添加qmake路径就可以了。如下图:

另外为了能够编译ARM下的qt程序,需要对QtCreater进行配置

如上,进入build & run >> Compiler >> Add >> 添加一个GCC >> name(填写方便区分的) >> Compiler Path(这里如果放在/root目录下,可能存在没有读取权限的情况,这个时候就手敲以便目录,进去然后选择里面的arm-xilinx-linux-gnueabi-g++

然后在Kit里面添加,主要更改名字,编译器,Qt版本。

还有后续...............

要想在目标板里运行编写好的Qt程序,除了要将编译好的ARM版的qt程序复制到rootfs分区的home文件夹之外,还需要将编译好的ARM版本Qt库复制到文件系统中,即

cp -rf /usr/local/Trolltech  /media/root/rootfs/usr/local

运行的时候,先进入home目录

cd  /home

然后执行qt应用程序(假设名字为Hello)

./Hello  -qws

Ubuntu上qt环境的构建的更多相关文章

  1. ubuntu上lamp环境搭建

    首先,介绍个彻底删除linux已经安装的软件的方法. sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5. ...

  2. RabbitMQ系列(一)RabbitMQ在Ubuntu上的环境搭建

    环境配置 Ubuntu Server 18.04 RabbitMQ 3.6.10 安装之前 我们使用apt-get进行RabbitMQ安装,在安装之前,强烈建议您把apt源换位国内,大大增加下载安装的 ...

  3. Ubuntu上Qt之简单图片浏览器

     >>主要功能: (1)图片切换浏览,上一张/下一张. (2)图片放大.缩小.包括两种机制:鼠标滚轮和按钮放大/缩小. (3)图片自动循环播放,间隔2s.点击播放后,其他操作均无效,直至点 ...

  4. Ubuntu上Qt+Tcp网络编程之简单聊天对话框

    首先看一下实现结果: >>功能: (1)服务器和客户端之间进行聊天通信: (2)一个服务器可同时给多个客户端发送消息:(全部连接时)   也可以只给特定的客户端发送消息:(连接特定IP) ...

  5. ffmpeg 在ubuntu上编译环境搭建和开发

    步骤如下: 1. 下载 官网永远是王道,呵呵:http://ffmpeg.org/download.html 或者 svn checkout svn://svn.mplayerhq.hu/ffmpeg ...

  6. Ubuntu上CUDA环境搭建

    1.下载CUDA:https://developer.nvidia.com/cuda-toolkit-archive (如果已经安装了N卡驱动,最好用.deb,如果没有安装,可以用.run) 2.根据 ...

  7. RabbitMQ在Ubuntu上的环境搭建

    1.修改/etc/apt/sources.list文件 A:命令:vi /etc/apt/sources.list B:在最后一行加上:deb http://www.rabbitmq.com/debi ...

  8. Ubuntu下 QT添加外部链接库(.so文件)示例

    参考:https://blog.csdn.net/KKALL1314/article/details/81915354 https://forum.qt.io/topic/80301/file-not ...

  9. ubuntu 上已经安装libxml2还提示需要reinstall的解决方法

    最近在ubuntu上配置环境,遇到一些奇怪的问题,已经安装了libxml2了,运行 apt-get install libxml2提示已经是最新版本了,可以在安装软件的时候还是提示没有libxml2, ...

随机推荐

  1. Java如何拆分正则表达式和字符串?

    在Java编程中,如何拆分正则表达式和字符串? 以下示例演示如何使用regex.Pattern类的Pattern.compile()方法和patternname.split()方法拆分正则表达式. p ...

  2. js实现选中文字 分享功能

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  3. SQLServer数据库降级方法详解

    右击数据库,有一个任务选项--扩展里面有一个生成脚本 设置脚本选项 高级 最下方"要编写的脚本类型" 选择 框架及数据 完成

  4. Java面试题考点全面总结

    我通过两个月的复习拿到了阿里巴巴的 offer,有一些运气,也有一些心得,借着跳槽季来临特此分享出来. 简单梳理一下我的复习思路,同时也希望和大家一起交流讨论,一起学习,如果不对之处欢迎指正一起学习. ...

  5. 8 -- 深入使用Spring -- 6...1 Spring支持的事务策略

    8.6.1 Spring支持的事务策略 JTA.JDBC.Hibernate Java EE应用的传统事务有两种策略:全局事务和局部事务.全局事务由应用服务器管理,需要底层服务器的JTA(Java T ...

  6. Puppet主机、模块、类、资源、变量、参数、标签命名规范

    Puppet命名规范: 约定说明: 小写字母:"a-z" 大写字母:"A-Z" 数字: "0-9" 句号: "." 下划 ...

  7. 题目1015:还是A+B(简单判断)

    题目链接:http://ac.jobdu.com/problem.php?pid=1015 详解链接:https://github.com/zpfbuaa/JobduInCPlusPlus 参考代码: ...

  8. mui---获取入口文件对象

    在做APP的时候,发现在Hbuilder里面,如果是已经加载过的页面,可以通过 plus.webview.getWebviewById(id),拿到加载的页面对象,这里的id默认是url,但是入口文件 ...

  9. Page Visibility API 页面是否获取焦点 Event: visibilitychange

    W3C 文档 https://www.w3.org/TR/page-visibility/ MDN 文档 https://www.w3.org/TR/page-visibility/ // Docum ...

  10. db2 reorg到底需要多少表空间(转)

    脱机reorg需要一定的空间,这个空间与目标所在的数据表空间.索引表空间.以及临时表空间均有关,各空间需求的大小与表和索引所占用的数据页和索引页相关. (1)对表执行reorg操作如:db2 reor ...