linux系统qt中make安装,Linux系统下Qt的基本安装和配置
Qt Creator支持中文,启动速度比Eclipse、Netbeans更快,界面也更美观,跟输入法Fcitx协作良好(光标跟随)。
你既可以把Qt Creator当代码编辑器作为vim辅助,好处在于Qt Creator能够自动parse项目,形成友好快速的智能提示,而且你也同样可以使用Qt Creator里面的gdb前端(上图)和valgrind前端(高清大图) 对项目进行调试和内存分析,不过Makefile就要自己写或者用autotools生成了,这对于使用vim进行编程的同学来说,应该是轻车熟路的。差点忘了,连续按两次Alt+V快捷键即可进入VIM编辑模式(FakeVim),这应该很能吸引vim用户。当然,Qt Creator默认支持主流版本控制系统git/hg/svn等。
你也可以把Qt Creator当作IDE,这时可以作为Eclipse CDT、 Netbeans for C++这些重量级IDE的一个轻量替代品。你可以直接在Qt Creator的向导里新建一个非Qt使用CMake自动构建的项目,这意味着你不用自己写Makefile,你只要在Qt Creator里“执行CMake”就能自动生成。当然,你也可以导入一个make构建的项目到Qt Creator里编译调试,比如Nginx。
1、安装Qt Creator和基础构建环境(以Ubuntu为例):
安装基础系统构建工具包:
复制代码代码如下:
sudo apt-get -y install build-essential cmake valgrind
下载最新版二进制Qt Creator(建议使用基于Qt4构建的2.8系列的Qt Creator,能更好地兼容Fcitx输入法):
http://mirrors.ustc.edu.cn/qtproject/official_releases/qtcreator/2.8/2.8.1/
不进行GUI编程,不需要安装Qt SDK,也就没有qmake和相关Qt开发库,只用下载那个60M的Qt Creator就好了,比如我下的是:
复制代码代码如下:
qt-creator-linux-x86_64-opensource-2.8.1.run
下载后给予执行权限,运行选择安装目录安装即可,可以安装在自己的家目录。
项目配置默认存放位置~/.config/QtProject
可以通过参数-settingspath自定义配置文件存放位置,比如:
复制代码代码如下:
/home/eechen/qtcreator-2.8.1/bin/qtcreator -settingspath /home/eechen/qtcreator-2.8.1
注意:如果你用的是基于Qt5构建的Qt Creator 3系列,其默认集成了iBus输入法插件,而对于Fcitx插件,则需要手动安装包fcitx-frontend-qt5, 然后复制libfcitxplatforminputcontextplugin.so到Qt Creator 3的 bin/plugins/platforminputcontexts 目录,比如: sudo apt-get install fcitx-frontend-qt5
ln -s /usr/lib/`arch`-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so /png/dev/qtcreator-3.2.1/bin/plugins/platforminputcontexts/
重启QtCreator,就可以正常使用Fcitx输入法了.
2、把自动完成快捷键"Ctrl+空格"改为"Alt+/"或者"Shift+Return"(Return表示Enter键)
工具-选项-环境-键盘: 键盘快捷键输入"Ctrl+空格",在键位顺序中点击x删除原来的"Ctrl+空格",输入新的"Alt+/",确定退出.
3、在Qt Creator中使用make构建,运行,调试通用C/C++项目
文件-新建文件或项目-导入项目-导入现有项目
这样导入的项目用的是make构建,需要自己写好Makefile文件后才能构建,支持自动完成,支持调试和内存分析.
4、在Qt Creator中使用cmake构建,运行,调试通用C/C++项目
文件-新建文件或项目-非Qt项目:新建一个CMake项目
在"执行CMake"这一步的参数中填入-DCMAKE_BUILD_TYPE=Debug
这样才可以在Qt Creator中调试程序,-DCMAKE_BUILD_TYPE的值可以设为Debug或者Release或者RelWithDebInfo.
cmake可以自动生成Makefile方便用make构建项目,但使用cmake构建项目也必须要会编写CMakeLists.txt文件.
Qt Creator支持使用qmake,make,cmake构建项目,但不能直接往cmake项目里添加文件,Qt Creator对CMake的支持还有待改进.
临时的做法是,切换到文件管理器来添加文件,然后右击项目"执行CMake"使parsing(语法解析)生效,并载入文件到在项目.
5、Qt Creator会自动识别系统中安装的gcc、g++、gdb、make、cmake、valgrind,也可以自己到菜单"工具"->"选项"里进行一些自定义配置.
配置vim外部编辑器:
工具->选项->环境->外部工具->使用vi进行编辑
把xterm改为konsole或者gnome-terminal
参数改为-e vim "%{CurrentDocument:FilePath}"
配置终端:
工具->选项->环境->概要
KDE环境默认为
复制代码代码如下:
/usr/bin/konsole -e
如果要用gnome-terminal,则设为/usr/bin/gnome-terminal -x
设置在终端运行程序:
项目(侧边栏)-运行-勾选"在终端中运行"
调试(gdb)时出现"ptrace operation not permitted"问题解决办法:
临时设置:
复制代码代码如下:
sudo sysctl kernel.yama.ptrace_scope=0
永久设置: 编辑/etc/sysctl.d/10-ptrace.conf改为kernel.yama.ptrace_scope = 0
系统默认设为1的目的是为了安全,防止用户程序(比如这里的gdb)访问其他进程(比如这里的konsole,gnome-terminal)内存的数据.
linux系统qt中make安装,Linux系统下Qt的基本安装和配置相关推荐
- linux创建自定义组件qt,QT中的元对象系统:创建自定义的QT类型
原创文章,转载请注明出处,谢谢! 作者:清林,博客名:飞空静渡 QVariant可以表示QT中的大部分类型,它和pascal中的variant类型或c中的void类型有点相似,不过它的使用和c中的un ...
- linux 匹配文本中的ip,linux文本三剑客匹配网卡IP地址大PK(CentOS 7系统)
运维工程师在做配置的过程中很多时候都需要去获取目标服务器网卡上的IP地址,那究竟用什么方式获取更便捷了,博主今天就带大家使用linux文本三剑客分别获取一下网卡的IP地址,最后我们再来对比一下. 实验 ...
- QT 中的 Graphics View 系统
这个框架是一个相对成熟的渲染引擎的上层框架,通常也可以会叫做 Scene - View. 在QT中,GraphicsView是一个与QWdiget系列一点点不一样的系统.这个系统主要由下面几个框架类构 ...
- 工作中常用的linux命令,工作中常用的Linux命令
1.Linux软件安装命令 2.压缩解压缩 unzip -d apache-tomcat.zip tar -zxvf apache-tomcat.zip ---解压缩 tar -zcvf apache ...
- linux去掉日志中的skipping,Linux日志文件总管 logrotate
logrotate介绍 参考:https://linux.cn/article-4126-1.html 参考:https://blog.csdn.net/vicky_lxw/article/detai ...
- linux的mysql本地yum安装_Linux Centos 下使用yum 命令安装mysql实现步骤
Linux Centos 下使用yum 命令安装mysql实现步骤 1. 查看服务器中有没有安装过Mysql 1. 查看有没有安装包: yum list mysql* #移除已经安装的mysql yu ...
- linux mysql多实例启动不了_linux下mysql多实例安装(转)
转自:http://www.cnblogs.com/xuchenliang/p/6843990.html 1.MySQL多实例介绍 1.1.什么是MySQL多实例 MySQL多实例就是在一台机器上开启 ...
- linux centos安装git,centos下两种方法安装git–转载
今天下个包需要使用git,网上找了下看到大多数只有编译安装,并且编译安装还有错,不知道他们也没有实验过,这里我来给大家介绍下编译安装和yum安装git. 系统:centos 5.5 需要的软件包:gi ...
- 【Qt】Qt中使用ssl时报错:qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method
一.问题 在Qt中使用https,运行时报错: qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method 二.原因分析 SSLv2由 ...
- centos 7 如何验证oracle安装成功_linux下Oracle数据的安装详解
第二章:CentOS下Oracle用户环境配置和Oracle11g的安装: 1.下载Oracle安装包: linux.x64_11gR2_database_1of2.zip 和 linux.x64_1 ...
最新文章
- JavaScript 中 window.setTimeout() 的详细用法
- 【Android 插件化】Hook 插件化框架 ( 通过反射获取 “宿主“ 应用中的 Element[] dexElements )
- zigbee zcl规范及其协议栈实现3 读取服务器端属性值
- 使用Solr 增加索引以及检索
- 请解释Spring Bean 的自动装配?
- leetcode584. 寻找用户推荐人(SQL)
- 如何快速生成JavaScript文档
- 【2021杭电多校赛】2021“MINIEYE杯”中国大学生算法设计超级联赛(2)签到题5题
- hadoop命令使用put上传文件报错
- java后端做教育视频网站源码_基于 Java Spring cloud的开源在线教育系统调试实战...
- H265/HEVC Codec编解码(MP4和TS)
- windows10如何修改pin码?
- Guava基本工具包Base:Null和字符串分割(Splitter)、拼接(Joiner)处理
- HTML 动态夜空特效
- 1.国民技术N32G45X例程之-串口打印
- CUDA:两种自适应图像去噪技术KNN和NLM的实例
- 哥德尔不完全性定理:现代数学的边界
- GDT(全居描述符表)和LDT(局部描述符表)
- PureMVC 实例讲解
- 微信自动回复小程序(有手就行)
热门文章
- DotNetBar 中 SuperGridControl 加载数据、获取数据、设置样式
- 如何在MFC中读写配置文件
- 沃尔沃投资两家以色列科技创企 布局人工智能
- 人工智能时代下的“烦恼”:美国国会探讨“深度伪造”风险及对策
- 机器学习入门案例简单理解——Tensorflow之MNIST解析
- 计算机内存知识txt,计算机新手必备内存实用知识.docx
- vs2019键盘钩子_C#键盘按键监视
- 009_InputNumber计数器
- php唯一性查询,ThinkPHP5.0数据更新验证唯一性怎么验证。
- 抖音右上角一个小黄点是什么_抖音用户更喜欢什么样的人设?抖音怎么塑造出一个受人喜欢的人设?抖音人设...