Qt Linux 下 <QWidget> <QSystemTrayIcon> <QLabel> 等头文件包含时 No such file or directory 100
如题啊,第一次接触Qt,比较茫然,找到很多例子,有些在编译时头文件显示Nosuchfileordirectory。操作系统是Ubuntu,Qt是5.0.1.求救中…………...
如题啊,第一次接触Qt,比较茫然,找到很多例子,有些在编译时头文件显示 No such file or directory。
操作系统是Ubuntu,Qt是5.0.1.
求救中…………………… 展开
操作系统是Ubuntu,Qt是5.0.1.
求救中…………………… 展开
3个回答
2013-05-17
展开全部
5.0.1我倒没装,我用的是4.8
不过,很明显这个路径配置出问题了,include path配置不对,或者你的文件权限不对,以至于你甚至没有权限去读取这些头文件,
第一个情况:
你是用Qt Creater工具写代码的吗?
可以试一下这样:
在打开的项目中,编辑 标签下,左侧栏右键对应的工程,添加新文件,选择C++,C++头文件,
将Qt的include目录及其所有子目录添加一遍
确实比较麻烦,不过你还可以修改项目的pro文件,前提是你要知道这个文件是干嘛用的,每个项表示什么意思,然后再linux下,用ls -l对include 所有子目录列出重定向到一个临时文件,然后对这个文件编辑一下,在复制过去,各种办法吧,看你怎么用了
第二个情况:
权限不够,这就得用include目录的所有者,对include目录及其所有子目录的所有文件chmod a+r -R include
这些东西一般安装之后基本的变量都应该配置好的,至于为什么,估计安装不对吧
除了includepath,其他一些变量也要相应改,确实难搞
搞不定的话,建议你重新装个4.x的吧
不过,很明显这个路径配置出问题了,include path配置不对,或者你的文件权限不对,以至于你甚至没有权限去读取这些头文件,
第一个情况:
你是用Qt Creater工具写代码的吗?
可以试一下这样:
在打开的项目中,编辑 标签下,左侧栏右键对应的工程,添加新文件,选择C++,C++头文件,
将Qt的include目录及其所有子目录添加一遍
确实比较麻烦,不过你还可以修改项目的pro文件,前提是你要知道这个文件是干嘛用的,每个项表示什么意思,然后再linux下,用ls -l对include 所有子目录列出重定向到一个临时文件,然后对这个文件编辑一下,在复制过去,各种办法吧,看你怎么用了
第二个情况:
权限不够,这就得用include目录的所有者,对include目录及其所有子目录的所有文件chmod a+r -R include
这些东西一般安装之后基本的变量都应该配置好的,至于为什么,估计安装不对吧
除了includepath,其他一些变量也要相应改,确实难搞
搞不定的话,建议你重新装个4.x的吧
更多追问追答
追问
装回4.8了,但是依然是原来的问题……这不科学啊
追答
确实很不科学,我想问一下,
你怎么装的,参考哪里的安装方法?
还有,编译代码的时候你是用什么编译器怎么编译的?
展开全部
Qt 5 和 Qt 4 的pro 文件写法不同.
如果直接用Qt 5 打开用Qt4 写的工程就会有这样的错误.
QT += core gui
greaterThan(QT_MAJOR_VERSION,4): QT += widgets
加在 .pro 文件里试试..
如果直接用Qt 5 打开用Qt4 写的工程就会有这样的错误.
QT += core gui
greaterThan(QT_MAJOR_VERSION,4): QT += widgets
加在 .pro 文件里试试..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
试试#include <QWidget.h>看看
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询