最近因为在做一个关于linux下计算机取证的小项目,需要写一个图形界面,所以想到了用QT来写,选用了linux下的集成开发环境QT Creator5.5.1,但刚刚安装好,竟然连一个"hello world"的样例都跑不起来,现在通过查找资料将一些问题解决掉了,放在这里记录下来,已被后用和分享:

1、QApplication: No such file or directory

(1)首先确定好QT Creator内部的环境变量设置是否正确:

“工具-选项-构建和运行”:找到“QT Versions”,点击“自动检测”下面的版本号,下边会出现一个新的配置栏,点击“桌面的Qt 版本5.5.1 ”后面的“详情”,查看“QT_INSTALL_HEADERS”后面的头文件变量是否正确,也可以到该变量中查找有无QApplication这一头文件,如果没有,建议重新安装QT,因为你从网上下载的单个文件不一定能够现有的编译器识别,最好安装配套的组件。

(2)如果以上信息都确认无误,则检查工程文件中*.pro中是否有“QT += widgets”,若没有,则需要在工程文件*.pro下增加一条:“QT += widgets”。通常问题就可以解决了;

2、:-1: error: cannot find -lGL

这个就很郁闷了,刚刚接触QT,连个hello world都没搞定呢,lGL是个什么鬼?网上一查才知道是个什么运行库,这里感谢CSDN上网友的解决办法:

http://bbs.csdn.net/topics/390845437?list=lz

sudo apt-get install libqt4-dev或者sudo apt-get install libgl1-mesa-dev或者libgl1-mesa-dev或者libglu1-mesa-dev

我把这几个包没有的都装了一遍,最后一个装的时候还把源更新了一遍才装上,这次问题就完美解决了。

3、Circular all <- first dependency dropped

这个问题就比较奇葩了,我很纳闷为什么会有这样的问题:

这个问题其实很容易解决,但解决方式有点让人吐血:出这个问题的肯定是你把工程名命名为了"first",是不是?

查过了才知道,Qt使用了first这个单词作为生成的Makefile文件的内置项,导致make在处理Makefile时产生依赖错误,只要把工程重命名即可解决

(神坑的问题……)

感谢博客园网友“24k纯开源”提供的解决办法:http://www.cnblogs.com/csuftzzk/archive/2013/07/18/3198154.html

4、 [SOLVED] Gtk-Message: Failed to load module "canberra-gtk-module"

这个是gtk库没有安装完整,重新安装即可

sudo apt-get install libcanberra-gtk3-module

sudo apt-get install libcanberra-gtk*

这样就可以解决了

5、对于包含了Q_OBJECT宏的类对象,需要现在本地执行"qmake -project"->"qmake"->"make",才能获得可执行文件,QT Creator中不能直接编译。

6、error: 'tr' was not declared in this scope

tr这个函数是QObject对象中的静态成员函数,因此使用的时候,如果不是用类来写的话,就会报这个错误,只需要在tr函数前加上“QObject::”,如:“QObject::tr("a button")”这样既可;

*一般用类来写程序时都会在定义类成员之前先包含QObject对象,所以用类就不会存在这个问题了

(今后问题肯定还会有,如果再出现任何问题,我都会及时再次更新……)

linux下QT Creator常见错误及解决办法的更多相关文章

  1. Linux下编译PHP常见错误及解决方法

    1.configure: error: xml2-config not found. Please check your libxml2 installation.yum install libxml ...

  2. github常见操作和常见错误及其解决办法

    一.常见操作 1. 使用git在本地创建一个项目的过程 $ makdir ~/hello-world //创建一个项目hello-world $ cd ~/hello-world //打开这个项目 $ ...

  3. MVC MVC常见错误及解决办法

    MVC常见错误及解决办法 问题1: 必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5 ...

  4. linux No module named yum错误的解决办法

    linux No module named yum错误的解决办法 肯定是yum的版本与当前python的版本不一致造成的 <pre>所以修改yum的配置,修改文件: vim /usr/bi ...

  5. Oracle的常见错误及解决办法

    ORA-12528: TNS:listener: all appropriate instances are blocking new connections ORA-12528问题是因为监听中的服务 ...

  6. 使用wubi安装ubuntu14.04出现的常见错误的解决办法

    花了一天的时间终于安装上了Ubuntu14.04,过程坎坷,是血泪史,开始报“cannot download the metalink and therefore the ISO”错误,解决后,又报“ ...

  7. Linux下Qt Creator编辑器无法输入中文解决

    Ubuntu安装了搜狗输入法,在浏览器中可以使用,但是在Qt Creator中却无法输入中文. 解决办法: 执行sudo apt-get install fcitx-libs-qt5 该命令将库文件l ...

  8. Window下Qt Creator启动错误解决方法

    很多电脑现在都是用的是双显卡,高性能的独显和性能比较差但耗电少的集显,在Window10系统下右键点击软件,在"图形处理器"里面可以选择使用什么显卡操作此软件.下面是我在运行Qt ...

  9. windows下安装sass,以及常见错误和解决办法

    简介: sass依赖于ruby环境,安装sass之前得先装ruby. 1.安装ruby 1.1.下载地址:http://rubyinstaller.org/downloads 1.2.注意事项:安装时 ...

随机推荐

  1. php编译器

    WordPress http://pan.baidu.com/s/1eQnOnv0 epp3: http://pan.baidu.com/s/1pJKFOD1 配合xampp: http://pan. ...

  2. DevExpress GridControl 使用方法技巧 总结 收录整理

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...

  3. VC按钮控件实现指示灯效果

    VC为按钮控件添加图片的方法有很多种: 直接调用SetBitmap:  CButton pButton->SetBitmap(hBitmap); 使用CButtonST控件: 使用CDC: 使用 ...

  4. 第一个程序点亮一个LED灯

    #include <reg52.h> // 引用52包文件 可以理解为命名空间 sbit P1_0 = P1^0;   // 定义P1管脚0 void main()             ...

  5. 读&lt;&lt;如何阅读一本书&gt;&gt;乱七八糟的笔记1

    阅读层次 第一层:基础阅读 第二层:检视阅读 系统化略读 第三层:分析阅读 第四层:主题阅读(比较阅读) 第二层:检视阅读 1.有系统的粗读或略读 (1)先看书名页,然后如果有序就先看序 (2)研究目 ...

  6. [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素-CSDN.NET

    Women Techmaker 北京站 [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素-CSDN.NET     [对话CTO]当当网熊长青:兴趣是成为优秀工程师的第一因素    发表于2 ...

  7. mysql基础之基本数据类型

    原文:mysql基础之基本数据类型 列类型学习 mysql三大列类型 整型 Tinyint/ smallint/ mediumint/int/ bigint(M) unsigned zerofill ...

  8. Struts2透过自定义拦截器实现登录之后跳转到原页面

    Struts2通过自定义拦截器实现登录之后跳转到原页面 这个功能对用户体验来说是非常重要的.实现起来其实很简单. 拦截器的代码如下: package go.derek.advice; import g ...

  9. mybatis的动态sql中collection与assoction

    User.java, Role.java,address.java为三个类 public class User { .....//user自己的属性//association一对一 private R ...

  10. 使用Lock锁生产者消费者模式

    package com.java.concurrent; import java.util.concurrent.locks.Condition; import java.util.concurren ...