[原创]QT for Linux(ubuntu)编程常见问题总结

简介: 一、用Qt创建工程1. 新建C++工程2. 创建C++ Main-File(main.cpp)文件3.
一、用Qt创建工程
1. 新建C++工程
2. 创建C++ Main-File(main.cpp)文件
3. 创建对话框
4. 编译
   1)进入到目录中
   2)qmake pro1.pro      //根据工程文件生成Makefile文件
   3)make                //编译
   4)./pro1    //执行程序
 
二、
1. 创建cpp文件
    a.cpp
2. 创建工程文件
    qmake -project
3. 创建makefile文件
    qmake
4. 编译
    make
5. 清除工程
    make clean
三、调试 GDB步骤
1.
...>gdb 应用程序名  ;启动GDB
2.
(gdb)l    ;相当于list命令,从第一行开始列出源代码。
3.
(gdb)    ;直接回车表示重复上一次命令
4.
(gdb)break 行号   ;设置断点
5.
(gdb)r    ;运行程序
6.
(gdb)n    ;单条语句执行,next命令简写
7.
(gdb)c    ;继续运行程序,continue命令简写
8.
(gdb)p 变量名   ;显示变量的值
9.
(gdb)bt    ;查看函数堆栈
10.
(gdb)finish   ;退出函数
11.
(gdb)q    ;退出gdb

四、调试多个文件
gdb调试多文件程序 比如说我在main.c里调用sayhello.c里实现的函数say_hello(),应该怎么跟踪呢?
列出文件main.c内容 查看say_helo的行数
list main.c:line_number
在文件main.c的第line_number行设置断点
break main.c:line_number
走到say_hello的时候,用s进入say_hello 
然后用next单步跟踪 
 
 
五、更新源列表
1. 打开源列表文件
 gksu gedit /etc/apt/sources.list
2. 源地址
北京市清华大学更新服务器(教育网,推荐校园网和网通用户使用)
deb  http://mirror9.net9.org/ubuntu/ feisty main multiverse restricted universe 
deb  http://mirror9.net9.org/ubuntu/ feisty-backports main multiverse restricted universe 
deb  http://mirror9.net9.org/ubuntu/ feisty-proposed main multiverse restricted universe 
deb  http://mirror9.net9.org/ubuntu/ feisty-security main multiverse restricted universe 
deb  http://mirror9.net9.org/ubuntu/ feisty-updates main multiverse restricted universe 
deb-src  http://mirror9.net9.org/ubuntu/ feisty main multiverse restricted universe 
deb-src  http://mirror9.net9.org/ubuntu/ feisty-backports main multiverse restricted universe 
deb-src  http://mirror9.net9.org/ubuntu/ feisty-proposed main multiverse restricted universe 
deb-src  http://mirror9.net9.org/ubuntu/ feisty-security main multiverse restricted universe 
deb-src  http://mirror9.net9.org/ubuntu/ feisty-updates main multiverse restricted universe
 
3. 更新源列表
 sudo apt-get update
4. 更新软件
 sudo apt-get dist-upgrade

六、一些命令
1. 拷贝文件
 sudo cp 源文件 目的路径
2. 删除文件
 rm -f 文件名
3. 安装文件
 sudo apt-get install 包名称
4. 显示库文件函数
 nm -D libflashplayer.so | grep NP
5. 将make信息输出到文件
 make > makeresult.txt 2>&1

七、编译时提示找不到头文件的处理
找不到头文件,修改.pro文件

INCLUDEPATH=.
改为
INCLUDEPATH=实际的路径
相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
目录
相关文章
|
4月前
|
Shell Linux
Linux shell编程学习笔记30:打造彩色的选项菜单
Linux shell编程学习笔记30:打造彩色的选项菜单
|
16天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
79 13
|
2月前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
4月前
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
4月前
|
Linux Shell
Linux系统编程:掌握popen函数的使用
记得在使用完 `popen`打开的流后,总是使用 `pclose`来正确关闭它,并回收资源。这种做法符合良好的编程习惯,有助于保持程序的健壮性和稳定性。
172 6
|
4月前
|
Linux Shell
Linux系统编程:掌握popen函数的使用
记得在使用完 `popen`打开的流后,总是使用 `pclose`来正确关闭它,并回收资源。这种做法符合良好的编程习惯,有助于保持程序的健壮性和稳定性。
188 3
|
5月前
|
项目管理 敏捷开发 开发框架
敏捷与瀑布的对决:解析Xamarin项目管理中如何运用敏捷方法提升开发效率并应对市场变化
【8月更文挑战第31天】在数字化时代,项目管理对软件开发至关重要,尤其是在跨平台框架 Xamarin 中。本文《Xamarin 项目管理:敏捷方法的应用》通过对比传统瀑布方法与敏捷方法,揭示敏捷在 Xamarin 项目中的优势。瀑布方法按线性顺序推进,适用于需求固定的小型项目;而敏捷方法如 Scrum 则强调迭代和增量开发,更适合需求多变、竞争激烈的环境。通过详细分析两种方法在 Xamarin 项目中的实际应用,本文展示了敏捷方法如何提高灵活性、适应性和开发效率,使其成为 Xamarin 项目成功的利器。
59 1
|
4月前
|
Shell Linux Python
python执行linux系统命令的几种方法(python3经典编程案例)
文章介绍了多种使用Python执行Linux系统命令的方法,包括使用os模块的不同函数以及subprocess模块来调用shell命令并处理其输出。
99 0
|
5月前
|
网络协议 Linux Shell
探索Linux操作系统:从基础到高级编程
【8月更文挑战第31天】本文旨在为读者提供一条清晰的路径,从Linux操作系统的基础知识出发,逐步深入到高级编程技巧。我们将一起揭开Linux神秘的面纱,了解其内部工作原理,并通过实际代码示例加深理解。无论你是初学者还是有一定经验的开发者,这篇文章都将为你带来新的视角和技能提升。
|
5月前
|
Linux
探索Linux操作系统:命令行与脚本编程基础
【8月更文挑战第31天】在这篇文章中,我们将一起踏上一段旅程,深入探索Linux操作系统的奥秘。通过学习命令行的使用和编写简单的脚本,你将能够更高效地与你的计算机进行交流。无论你是新手还是有经验的用户,本文都将为你打开一扇通往Linux世界的大门。准备好了吗?让我们开始吧!