no such file or directory #include“xx.h“

博主分享了在将Win下Qt项目迁移到Linux统信UOS飞腾D2000平台时,遇到的xx.h文件找不到的问题。通过尝试消除工程文件、构建插件、调整相对路径等步骤,最终发现使用绝对路径并修正空格问题解决了导入机制问题。
 最近在把win下qt项目移到linux,编译时遇到了以上问题。环境:qt5.11,统信(uos):飞腾D2000。

在试过了网上说的一些办法后,无效果。在工程文件(.pro)中对文件路径,一模一样,路径对。
后尝试下面几种方法:(每种方法都可以解决部分问题,出现多处无法找到xx.h,每一处的解决方法不同)
(楼主的xx.h是自己的代码,不是第三库的xx.h)

  1. 在缺失的xx.h文件找到其所属的工程文件pro,右键点击 消除,再“构建xx”。若无错误提示,成功新构建了插件,over。
  2. 在1的基础上“构建xx”,出错,提示老问题no such file or directory #include"xx.h",删除build下debug的对应的旧插件,再按照1走一遍。

如:在b.cpp 中提示no such file or directory #include"a.h"
找到a.h所属工程文件(pro),确认导入路径没有错误后,右键 “消除”再“构建xx”,生成新的插件。返回b.cpp,右键“构建xx”新插件。该过程无错误提示,这解决了bug。

  1. 1,2都试过后,还不行。试过直接#include 绝对路径,发现没报错,说明导入机制是正常的。最后在导入的相对路径
INCLUDE +=$$PWD/../querybillplugin/quickquotedialog/

最后加一个“/”,如上面所示。至于原因,linux会在路径后面加一些空格???存疑。该bug就此解决

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值