Ubuntu 13.04下构建Qt5开发环境
虽然Qt命运多舛,但是也阻挡不了程序员对它的喜爱。经历了一系列波折之后,现在到在芬兰公司Digia手中,Qt又将迎来一个发展。Qt5就是在这种情况之下发布的。正值Ubuntu刚刚发布了13.04版,我就在这个环境下尝试配置Qt5的开发环境,并记录下来,给有同样需要的朋友作为参考。
1. 如果要使用Qt的商业版,需要向Digia公司(http://qt.digia.com/)购买授权,但是用于学习目的,我们可以选择LGPL授权版本,下载地址为:http://qt-project.org/。我这里下载的是”Qt 5.0.2 for Linux 32-bit”版本,文件名是”qt-linux-opensource-5.0.2-x86-offline.run”。
2. 进入下载目录,在Ubuntu终端下面执行下面的语句,无需root权限:
./qt-linux-opensource-5.0.2-x86-offline.run
3. 接下来就会出现Qt安装对话框,点击”next”执行下一步:

4. 接下来选择安装位置。因为使用的不是root权限,所以建议安装在用户目录下:

5. 选择需要安装的组件,这个根据需要选择就可以了:

6. 选择LGPL许可协议:

7. 点击”Install”开始安装:

8. 耐心等待安装完成:

9. 点击”Finish”完成安装:

10. 运行Qt Creator,我们发现已经是简体中文界面了:

11. 我们运行一个示例看下有没有问题,就选择”2D Painting Example”吧:

12. 我们发现Qt Creator报告了一个问题:”Qt Creator 需要设置一个编译器来构建。在构建套件选项里设置一个编译器。”。看来是编译器的问题。
13. 我的机器还没有安装GCC和G++,在终端里执行下面的语句,安装编译器:
sudo apt-get install g++
14. 安装完编译器后,重新打开Qt Creator,发现已经可以编译了,但是报告一个错误:”GL/gl.h:No such file or directory”。这是因为机器没有安装OpenGL库,执行下面的语句安装即可:
sudo apt-get install mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev
15. 安装完成后,再次编译运行,发现示例程序成功运行起来了:

16. 到这里Qt Creator就安装完成了
- 在终端(Shell)下编写Qt代码,而不是在Qt Creator中,下面的步骤说明了这种情况下需要做的工作:
1. 将qmake的路径加入环境变量中,在我机器上qmake的路径是”/home/lev/Qt5.0.2/5.0.2/gcc/bin”,大家在配置时需要改成自己的路径。使用vim(或其他编辑工具)编辑”.bashrc”文件,仅对本用户有效:
vim /home/lev/.bashrc
2. 在最后一行PATH变量中加入qmake的路径,格式类似”PATH=$PATH:/my_new_path:”,不同路径用冒号隔开:
export PATH="/opt/microchip/xc8/v1.12/bin:/home/lev/Qt5.0.2/5.0.2/gcc/bin":$PATH
3. 重启终端或执行以下语句,使新的环境变量生效:
$source ~/.bashrc
4. 这时就可以在终端下直接编写Qt程序了。下面看我编写的例子:
新建一个文件夹”hello”,进入这个目录,使用vim编写代码:
mkdir hello
vim hello.cpp
编写代码:
#include <QApplication>
#include <QLabel> int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QLabel *label = new QLabel("Hello Qt!");
label->show();
return app.exec();
}
执行以下语句:
qmake -project
qmake hello.pro make
现在生成了可执行文件hello,执行它,就会弹出窗口了:

至此全部搞定。
Ubuntu 13.04下构建Qt5开发环境的更多相关文章
- Ubuntu 12.04下搭建Qt开发环境
http://download.qt.io/official_releases/qt/ Ubuntu 环境下Gtk与Qt编译环境安装与配置(系统环境是Ubuntu 12.04) 1.配置基础开发环境G ...
- ubuntu 14.04下搭建esp32开发环境
esp32是乐鑫出品的一款集成了wifi和蓝牙的集成模块,板上自带两个哈佛结构的Xtensa LX6 CPU双核处理器,本文主要讲解如何在linux下搭建其编译开发环境. 首先ctrl+alt+t打开 ...
- Ubuntu 14.04下搭建 Android 开发环境(1) -JDK安装
1.下载最新的jdk安装,地址:http://www.oracle.com/technetwork/java/javase/downloads/ 2.解压jdk-8u20-linux-x64.gz,我 ...
- Ubuntu 16.04下配置Golang开发环境
安装之前先要明白两个变量,后面介绍安装时,会用这两个变量 GOROOT , 这是go的工作目录,比如 /home/[替换为你的用户名]/go/work GOPATH , 这是go的安装目录, ...
- ubuntu 13.04下MYSQL 5.5环境搭建
解决的问题: 安装mysql server和mysql client 5.5 新建远程账户 远程访问权限 MYSQL默认字符集修改为UTF8 检查防火墙 一.安装 BTW:可以使用查找命令查看安装包 ...
- 在 Ubuntu 13.10 中搭建Java开发环境 - 懒人版
本文记录我在Ubuntu 13.10中搭建Java开发环境. 本文环境: Ubuntu 13.10 x64运行在Win7下的VMware Workstation 10中. 1. 安装JDK与JRE s ...
- Ubuntu 12.04 搭建 Eclipse Android 开发环境(转)
Ubuntu 12.04 搭建 Eclipse Android 开发环境 http://blog.sina.com.cn/s/blog_93dc666c0101b39p.html (2012-09-0 ...
- OK335xS Ubuntu 12.04.1 版本 Android 开发环境搭建
/******************************************************************************************** * OK33 ...
- eclipse在Ubuntu 13.04下的安装过程
eclipse在Ubuntu 13.04下的安装过程及问题小记 一.eclipse安装过程 首先确保在安装eclipse之前已经安装好Java虚拟机 1. eclipse官网下载压缩包 下载地址:ht ...
随机推荐
- 如何用区块链技术解决信任问题?Fabric 架构深度解读
阿里妹导读:区块链技术,随着比特币的兴起而为大家所知.但是具体到技术本身,大家相对熟悉的几个词可能是“数据不可篡改”.“公开链”.“分布式数据”.“共识机制”等. 这篇文章将抛砖引玉,通过深度解读Hy ...
- [UWP 自定义控件]了解模板化控件(2.1):理解ContentControl
UWP的UI主要由布局容器和内容控件(ContentControl)组成.布局容器是指Grid.StackPanel等继承自Panel,可以拥有多个子元素的类.与此相对,ContentControl则 ...
- Jmeter(二十九)_dotnet搭建本地接口服务
这里使用的服务名为Bookshelf,在github上,自行下载.要运行此服务,需要.Net Core SDK 2.1或更高版本.如果尚未安装,从.Net Core官方网站下载并安装. 在本地克隆项目 ...
- Ceph分布式存储-原理介绍及简单部署
1)Ceph简单概述Ceph是一个分布式存储系统,诞生于2004年,最早致力于开发下一代高性能分布式文件系统的项目.Ceph源码下载:http://ceph.com/download/.随着云计算的发 ...
- Redis数据"丢失"讨论及规避和解决的几点总结
Redis大部分应用场景是纯缓存服务,请求后端有Primary Storage的组件,如MySQL,HBase;请求Redis的键未命中,会从primary Storage中获取数据返回,同时更新Re ...
- Python数据类型-7
什么数据类型. int 1,2,3用于计算. bool:True,False,用户判断. str:存储少量数据,进行操作 'fjdsal' '二哥','`13243','fdshklj' '战三,李四 ...
- 北航MOOC客户端
我们的团队作业终于完成了,欢迎下载使用我们的北航MOOC手机客户端软件(Android端)——北航学堂,学习北航的公开课程. 安装包下载地址: http://pan.baidu.com/s/1jGvH ...
- Spring方法级别的验证
设置验证点及验证方式(1)Spring方法级别的验证有多种验证方式,比较常用的有 @NotBlank:主要是对字符串的验证,不为null且去除空白符之后长度大于0 @NotNull:主要是对对象的验证 ...
- 第三个spring冲刺第5、6、7天(三天汇总)
这三天我们一直在研究选择题的选项插入与切换,现在已经大致完善了,达到了预想的效果,晚点会补上截图.
- [福大软工] Z班——Alpha现场答辩情况汇总
Alpha现场答辩 小组互评(文字版) 各组对于 麻瓜制造者 的评价与建议 队伍名 评价与建议 *** 界面较友好,安全性不足,功能基本完整.希望能留下卖家的联系方式而不是在APP上直接联系,APP上 ...