Ubuntu安装qt5_qt5安装教程

Ubuntu安装qt5_qt5安装教程最近打算学一下QT应用程序开发,所以打算装一个QT桌面环境QtCreator,捣鼓了一阵,把电脑弄坏重装系统之后,终于安装好了,这里分享一下安装的过程

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

前言

最近打算学一下QT应用程序开发,所以打算装一个QT桌面环境QtCreator,捣鼓了一阵,把电脑弄坏重装系统之后,终于安装好了,这里分享一下安装的过程

1. QT5安装

环境

Ubuntu14.04
QT5.12.3

首先去QT安装包下载安装包,我这里选择的是目前最新的QT5.12.3
QT安装包
下载好之后赋予可执行权限

chmod +x qt-opensource-linux-x64-5.12.3.run

然后执行安装命令

sudo ./qt-opensource-linux-x64-5.12.3.run

然后一直点下一步或者跳过就好了,安装路径我也是默认的
QT安装路径
等待安装完成

2. 路径配置

安装完成之后,需要修改default.conf,执行

sudo vim /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf

将第一行改为自己安装路径下的bin目录的路径,第二行改为Qt5.12.3目录的路径,下面是我的配置

/opt/Qt5.12.3/5.12.3/gcc_64/bin
/opt/Qt5.12.3/

3. 运行问题

3.1 FT_Get_Font_Format

运行qtcreator,然后报错undefined symbol: FT_Get_Font_Format

anruliu@anruliu:/opt/Qt5.12.3/Tools/QtCreator/bin$ ./qtcreator
./qtcreator: symbol lookup error: /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/plugins/platforms/../../lib/libQt5XcbQpa.so.5: undefined symbol: FT_Get_Font_Format

需要下载安装freetype-2.10.0,解压之后执行

cd freetype-2.10.0
./configure --prefix=/opt/Qt5.12.3/Tools/QtCreator/lib/Qt/
make
cd ./objs/.libs
sudo cp libfreetype.so /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib
sudo cp libfreetype.so.6 /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib
sudo cp libfreetype.so.6.17.0 /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib

其中/opt/Qt5.12.3/就是安装QT的目录

3.2 LIBDBUS_1_3 not defined

再次运行qtcreator,然后报错version LIBDBUS_1_3 not defined

anruliu@anruliu:/opt/Qt5.12.3/Tools/QtCreator/bin$ ./qtcreator
./qtcreator: relocation error: /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/plugins/platforms/../../lib/libQt5DBus.so.5: symbol dbus_message_get_allow_interactive_authorization, version LIBDBUS_1_3 not defined in file libdbus-1.so.3 with link time reference

需要下载安装dbus-1.13.10,解压之后执行

cd dbus-1.13.10
./configure --prefix=/opt/Qt5.12.3/Tools/QtCreator/lib/Qt/
make
cd ./dbus/.libs
sudo cp libdbus-1.so /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib
sudo cp libdbus-1.so.3 /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib
sudo cp libdbus-1.so.3.26.0 /opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib

其中/opt/Qt5.12.3/就是安装QT的目录
把缺失的库直接拷贝到qtcreator的lib的路径下,可以让qtcreator找到它自己需要依赖的库,不会对系统本身造成影响,不然可能会导致桌面起不来,然后得重装系统

所有问题解决后,运行qtcreator,就可以看到界面,可以尽情的开发了
qtcreator运行效果

4. 编译应用问题

在示例中选择一个demo进行编译,比如我选的是shadow-map-qml,在构建设置配置好后,点击运行,发现还有一些错误

4.1 GL/gl.h: No such file or directory

/opt/Qt5.12.3/5.12.3/gcc_64/include/QtGui/qopengl.h:144: error: GL/gl.h: No such file or directory

需要安装gl的库

sudo apt-get install libgl1-mesa-dev

4.2 LIBDBUS_1_3 not defined

relocation error: /opt/Qt5.12.3/5.12.3/gcc_64/lib/libQt5DBus.so.5: symbol dbus_message_get_allow_interactive_authorization, version LIBDBUS_1_3 not defined in file libdbus-1.so.3 with link time reference

这个和运行qtcreator的错误一样,需要我们指定libdbus的目录,在项目–>构建设置–>构建环境添加环境变量LD_LIBRARY_PATH为/opt/Qt5.12.3/Tools/QtCreator/lib/Qt/lib,如下图所示
构建设置
改好之后,重新运行,就可以看到应用运行效果了!!!
QT DEMO

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181411.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 谷歌浏览器无法上网问题解决方案_只有浏览器不能上网

    谷歌浏览器无法上网问题解决方案_只有浏览器不能上网今天清理垃圾时不小心删错了文件,导致谷歌浏览器一直无法上网,qq倒是能登陆。网上找了很多方法都没效果,什么取消代理服务器、管家网络修复、设置sfc什么通通都试过了。最后的解决办法是:1.win+r

    2022年8月1日
    6
  • HDU 4125 Moles 段树+KMP

    HDU 4125 Moles 段树+KMP

    2022年1月8日
    47
  • 1.7-工控上位机软件开发平台介绍

    1.7-工控上位机软件开发平台介绍一、前言前面几章一直没有提到上位机的另一个主要使用场合,即“工业上位机软件”。主要是因为本人没有接触过,不敢贸然发表见解类的文章。最近在机缘巧合下,对“工业上位机软件”有了一些初步的了解。在这里和大家分享一下。注意本节的内容还不够专业全面,只适合对“工控软件”进行一个初步的了解。二、工业“自动化”控制系统的组成在工业生产过程中,最重要的是安全,其次是稳定。工业生产环境中可以常见大如“吊车”般的设备、有毒气体、强碱、强酸、几千度的高温、易燃易爆气体、高压水蒸气。所以容不得半点错误,出错就意味着要死人,因

    2022年5月31日
    84
  • jdk1.7 hashmap扩容_Java并发实现原理:JDK源码剖析

    jdk1.7 hashmap扩容_Java并发实现原理:JDK源码剖析HashMap简介:HashMap在底层数据结构上采用了数组+链表+红黑树,通过散列映射来存储键值对数据因为在查询上使用散列码(通过键生成一个数字作为数组下标,这个数字就是hashcode)所以在查询上的访问速度比较快,HashMap最多允许一对键值对的Key为Null,允许多对键值对的value为Null。它是非线程安全的。在排序上面是无序的。HashMap的主要成员变量…

    2022年9月21日
    3
  • qt tcpsocket 接收数据_如何给微信好友发送指定位置

    qt tcpsocket 接收数据_如何给微信好友发送指定位置在网络应用中,有时候我们会遇到这样的问题,用TCP不断的接收和发送不同类型的数据,数据大小,格式都不相同,起初看了qt的例子,按照例子写的程序效果相当的不好,尤其是在连续发送大数据的时候,接收端根本无法判断数据是否完整了,也不知道什么时候取读取,经过各种折腾加上看qt源码,总结出了这个方法,发送的时候,要先发送这个数据序列化后的大小,然后发送这个数据本身,接收端,首先收到了要接收数据的大小,心里有

    2025年10月10日
    7
  • QT QList介绍及应用

    QT QList介绍及应用QList是目前最常用的容器类,它存储了给定类型的值的一个列表,而这些值可以通过索引访问。QList使用数组来实现,以确保进行快速的基于索引的访问。使用QList::append和QList::prepend在列表的两端进行添加项目。使用QList::insert()在列表的中间插入项目。实例:#include<QCoreApplication>#include<Q…

    2025年6月14日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号