Linux下安装Qt5.6.1
我的环境:CentOS 6.7 64位。
1.下载Qt:
Qt版本有很多,自己比较菜,希望安装的过程越简单越好,感觉比较新的版本会好安装一些,5.4版本还要更新 /usr/lib64/libstdc++.so.6 文件,5.6的话就省心一些。
地址如下:
http://download.qt.io/official_releases/qt/5.6/5.6.1/
选择和系统对应的,我选择了qt-opensource-Linux-x64-5.6.1.run
这个.run文件既包含了SDK也包含了IDE:QtCreator。
2.安装Qt::
在终端中进入到下载完的Qt安装文件所在目录,一般下到主文件夹内的Downloads内,于是#cd ~/Downloads。
要先更改权限才能够安装:#chmod u+x qt-opensource-linux-x64-5.6.1.run
然后就可以 #./qt-opensource-linux-x64-5.6.1.run安装了。
安装的过程会比较顺利,一路点点点。
3.配置环境变量
如果进入到QtCreator所在目录下是可以运行QtCreator的,但每次都这样会很麻烦,可以将其加入到系统环境变量。
#vim /etc/profile 后面那个文件就是存放环境变量的,如果没有取得root权限这个文件是只读的,所以要想修改它就要先取得权限(我比较菜也比较懒直接先#su了,后面也不用#sudo xxx了)。
在文件中添加:
export QTDIR=/opt/Qt5.6.1/Tools/QtCreator
export PATH=$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
其中/opt/Qt5.6.1是我的Qt的安装目录。
#source /etc/profile 使修改的环境变量生效。
之后#qtcreator就可以启动QtCreator了。
如果想在命令行下用Qt开发,就需要qmake这个工具,可以按照和上面一样的方式将其加入环境变量。
我的电脑中其路径是/opt/Qt5.6.1/5.6/gcc_64。
接下来尝试我们的第一个程序helloworld。
选择一个目录创建我们的工程文件夹helloworld并进入。
#vim helloworld.cpp
编辑内容如下:
#include<QApplication>
#include<QLabel>
int main(int argc,char *argv[])
{
QApplication app(argc,argv);
QLabel *label=new QLabel("helloworld!");
label->show();
return app.exec();
}
保存后就可以开始编译了。
#qmake -project
这步之后会发现当前文件夹内多了一个helloworld.pro,是各个平台都通用的工程文件。
#qmake helloworld.pro
文件夹内又多了Makefile
#make
可执行文件就顺利生成啦。
过程中遇到一些问题:
问题1:提示缺少头文件
helloworld.cpp:1:23: 错误:QApplication:没有那个文件或目录
helloworld.cpp:2:17: 错误:QLabel:没有那个文件或目录
编辑第一步qmake -project生成的helloworld.pro
#vim helloworld.pro
加入QT+=widgets
问题2:error: cannot find -lGL
原因是系统缺乏相应的OpenGL库文件造成,解决方案如下:
进入CentOS系统的终端,依次执行以下命令,即可解决。(依然需要root权限)
#yum install mesa-libGL-devel mesa-libGLU-devel
#yum install freeglut-devel
Linux下安装Qt5.6.1的更多相关文章
- linux下安装QT5:error: unrecognized command line option ‘-fuse-ld=gold’
安装qt时在执行./configure时报错:error: unrecognized command line option '-fuse-ld=gold' 这个错误是qt的一个bug. 在装有gol ...
- linux下编译qt5.6.0静态库(使用./configure --help来看看都有哪些参数。超详细,有每一个模块的说明。如果改变了安装的目录,需要到安装目录下的bin目录下创建文件qt.conf)(乌合之众)good
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Linux下安装Tomcat服务器和部署Web应用
一.上传Tomcat服务器
- linux下编译qt5.6.0静态库——configure配置
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- 转】Linux下安装Tomcat服务器和部署Web应用
原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4097608.html 感谢! 一.上传Tomcat服务器
- linux下编译qt5.6.0静态库——configure配置(超详细,有每一个模块的说明)(乌合之众)
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- linux下安装tomcat和部署web应用
孤傲苍狼 只为成功找方法,不为失败找借口! Linux下安装Tomcat服务器和部署Web应用 一.上传Tomcat服务器
- Linux下安装Tomcat服务器
Linux下安装Tomcat服务器 一.总结 一句话总结: linux多用才能熟 1.阿里云上面我们买的服务器,怎么让它可以访问特定的端口? 就是给服务器的安全组添加规则:实例-->更多--&g ...
- Linux下安装 Posgresql 并设置基本参数
在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...
随机推荐
- 二:SpringAOP
一:AOP 面向切面编程思想 横向重复,纵向抽取 |- filter中 |- 动态代理 |- interceptor中 二:动态代理 1.通过动态代理可以体现aop思想 2.对目标对象中的方法进行增强 ...
- CentOS7下配置FTP服务
1.参考教程: 腾讯云开发者实验室:基于 CentOS 搭建 FTP 文件服务 Linux就该这么学>:第11章 使用Vsftpd服务传输文件 (需要自己百度) 2.实验环境: VMware 1 ...
- Java温故而知新(10)类的加载机制
类加载是Java程序运行的第一步,研究类的加载有助于了解JVM执行过程,并指导开发者采取更有效的措施配合程序执行. 研究类加载机制的第二个目的是让程序能动态的控制类加载,比如热部署等,提高程序的灵活性 ...
- 中南oj 1216: 异或最大值 数据结构
1216: 异或最大值 Time Limit: 2 Sec Memory Limit: 128 MB Submit: 98 Solved: 29 [Submit][Status][Web Boar ...
- 使用模块化工具打包自己开发的JS库(webpack/rollup)对比总结
打包JS库demo项目地址:https://github.com/BothEyes1993/bes-jstools 背景 最近有个需求,需要为小程序写一个SDK,监控小程序的后台接口调用和页面报错(类 ...
- Spring AOP注解通过@Autowired,@Resource,@Qualifier,@PostConstruct,@PreDestroy注入属性的
本文介绍了使用spring注解注入属性的方法. 使用注解以前,注入属性通过类以及配置文件来实现.现在,注入属性可以通过引入@Autowired注解,或者@Resource,@Qualifier,@Po ...
- 多版本python如何切换
一.在命令行中 通过py -x 二.在py文件中 头部字段添加 #!python2 或 #!python3 即可调用相应版本解释器 命令行调用python:py helloworld.py
- csharp:Optical Character Recognition
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...
- JS判断请求来自Android手机还是iPhone手机
<script type="text/javascript"> var browser = { versions: function () { var u = navi ...
- .NET开源工作流RoadFlow-流程运行-管理员干预
在流程运行过程中管理员可以干预流程实例的走向,如管理加强制退回,指派和删除流程实例操作.在 流程管理-->实例管理 中查找到相应的流程实例,点击管理按钮即可管理该流程实例: 点击指派按钮,选择要 ...