首页 > 系统相关 >centos下手动编译Qt应用程序

centos下手动编译Qt应用程序

时间:2023-09-04 16:24:10浏览次数:37  
标签:Qt centos 5.9 应用程序 编译 fan home QT qt

centos7下手动编译Qt5的程序
需要Qt5的源代码编译出Qt5在linux下的可执行环境,怎么编译这个以后再说
我这里编译的版本是5.9.9

然后,将这个环境拷贝到centos某个目录下,我放到主目录下
设置环境变量
编写一个文本文件叫 qt-5.9.9-env ,内容是

export PATH=/home/fan/qt-5.9.9/bin:$PATH
export LD_LIBRARY_PATH=/home/fan/qt-5.9.9/lib:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/home/fan/qt-5.9.9/plugins
export QMAKESPEC=/home/fan/qt-5.9.9/mkspecs/linux-g++-64
export QT_IM_MODULE=xim

 

这里的/home/fan/qt-5.9.9就是我编译的Qt环境

这里将Qt5.9.9的可执行文件目录,库目录,插件目录都导出
指定编译环境为linux-g++-64
输入模块xim
然后在命令行下执行
source qt-5.9.9-env

在windows下的Qt Creator里新建一个工程test,将工程里的 .cpp .h .pro拷贝到centos里的一个单独的文件夹下比如
/home/fan/testQt5
test.pro文件的内容如下

QT += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++17

# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
main.cpp \
mainwindow.cpp

HEADERS += \
mainwindow.h

FORMS += \
mainwindow.ui

 

然后shell切换到这个目录下,执行
qmake
会生成Makefile文件
make
就会出现 test 这个可执行文件
执行
./test
可能你那里会报错,我这里就报错了,找不到GL库,是因为库的路径不对
你去/usr/lib64下,会找到一个库文件叫libGL.so.1.7.0
建立软连接
ln -s /usr/lib64/libGL.so.1.7.0 /usr/lib64/libGL.so

然后切回/home/fan/testQt5目录执行
./test
就可以正常显示程序了

标签:Qt,centos,5.9,应用程序,编译,fan,home,QT,qt
From: https://www.cnblogs.com/litandy2016/p/17677391.html

相关文章

  • 理解Qt中的setViewport和setWindow
    概念相关Qt的2D变换中有逻辑坐标(窗口)和物理坐标(视口)划重点:窗口(逻辑坐标)与视口(物理坐标)的关系:窗口的四个角会映射到视口的四个角,它们四个角之间一一对应,两者的比例是1:1。它们默认的状态下,逻辑坐标和物理坐标都是一一对应的,起始点都是(0,0),长度高度也一致即两者重合,对应......
  • 小谈Qt的坐标系系统 - 3个坐标系,2个变换
    小谈Qt的坐标系系统Qt中有三个坐标系设备坐标系窗口坐标系逻辑坐标系设备坐标系:即Device坐标系。也是物理坐标系。即真实的的物理坐标系。逻辑坐标系:即用户坐标系。也就是说日常大家使用Qt的时候的坐标系。窗口坐标系:这个坐标系是QPainter设置setWindow以后的一个坐......
  • QT坐标系转换(将QPainter左上角为原点的坐标系转换为正常坐标系)
    没有复杂的变换,简单转化窗口坐标系,即可按我们正常熟知的坐标系进行绘图QPainter坐标系以左上角为原点,如下图 在这样的坐标系下绘图,位置这是倒过来的QPainterm_pPainter(this);   m_pPainter.setBrush(Qt::yellow);   m_pPainter.drawRect(0,0,50,50);   m......
  • keepalived安装(CentOS7 + keepalived 2.2.7)
    Linux系统-部署-运维系列导航 keepalived介绍keepalived相关原理,可以参考网络教程负载均衡之备胎转正,以下为简单介绍。 keepalived是使用C语言编写的路由热备软件,该项目软件起初是专门为LVS负载均衡设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以......
  • linux学习 Centos 7(二)
    linux学习Centos7(二)常用的基本命令目录管理绝对路径、相对路径绝对路径路径的全称:C:\ProgramData\360safe\xxx.xx在360safe目录下,xxx.xx的相对路径就是\xxx.xxcd切换目录绝对路径:/开头相对路径:../homecd:切换目录命令cd./:当前目录cd..:返回上一级目录ls......
  • ARM主机配置centos7.6仓库文件
    cat>/etc/yum.repos.d/CentOS-Base.repo<<EOF#CentOS-Base.repo##ThemirrorsystemusestheconnectingIPaddressoftheclientandthe#updatestatusofeachmirrortopickmirrorsthatareupdatedtoand#geographicallyclosetotheclient.......
  • VS+Qt工具vsaddin
    1.https://download.qt.io/official_releases/vsaddin/2.ToolsExtensions-VisualStudio 安装:C:\xxxx\VSIXInstaller.exexxx.vsix......
  • MFC单文档应用程序引入GDI+
    在MFC中引入GDI+,步骤如下:1、在需要用到GDI+的文件中添加GDI+文件1#include<gdiplus.h>2usingnamespaceGdiplus;2、在应用程序类(CGdiplusDemoApp)中添加成员变量:1ULONG_PTRm_gdiplusToken;3、在该类的初始化函数BOOLCGdiplusDemoApp::InitInstance()中加入以下......
  • 【Qt初入江湖】Qt QSqlQueryModel 底层架构、原理详细描述
    鱼弦:全栈领域创作新星创作者、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen) QtQSqlQueryModel是Qt中用于实现自定义SQL查询的模型类,它继承自QAbstractTableModel。QSqlQueryModel封装了对数据库查询结果的处理,可......
  • 【Qt初入江湖】Qt QSqlRelationalDelegate 底层架构、原理详细描述
    鱼弦:全栈领域创作新星创作者、51CTO(Top红人+专家博主)、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen) Qt的QSqlRelationalDelegate类是用于在Qt模型/视图框架中使用带有外键关系的数据库表格数据的委托类。它提供了一组用于在表格视图......