【问题标题】:Why file isn't found in qt make even though file is existed [closed]即使文件存在,为什么在 qt make 中找不到文件[关闭]
【发布时间】:2021-05-07 22:24:52
【问题描述】:

我想为开源存储库FFmpegGUI 构建可执行文件。我对 C++ 完全陌生(不知道代码,从 2 天开始就在谷歌上搜索它以使构建工作)。经过很多小时后,我设法以某种方式解决了 ffmpeg 问题并使 ./configure 工作。

现在我被困在make 命令中,该命令给出了有关文件存在问题的信息。相信我,我已经在 Stack Overflow 上搜索过类似的错误,但令人惊讶的是我找不到任何类似的问题。 (也许没有人得到这个错误,或者我只是太菜鸟)。错误代码如下...

/usr/lib/qt5/bin/uic src/filtersList.ui -o ui_filtersList.h
/usr/lib/qt5/bin/uic src/filtersWidget.ui -o ui_filtersWidget.h
/usr/lib/qt5/bin/uic src/inspectionWidget.ui -o ui_inspectionWidget.h
g++ -c -pipe -fpermissive -std=c++0x -O2 -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -I. -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o connectivity.o src/connectivity.cpp
In file included from src/filter.h:34,
                 from src/pad.h:47,
                 from src/connectivity.cpp:26:
src/filtersWidget.h:28:10: fatal error: filter.h: No such file or directory
   28 | #include <filter.h>
      |          ^~~~~~~~~~
compilation terminated.
make: *** [Makefile:568: connectivity.o] Error 1

我不知道我做错了什么,但不管我做什么。当我运行make 命令时,我总是遇到上述错误。

请观看此Video GIF 以检查我是否做错了什么。

【问题讨论】:

    标签: c++ linux qt


    【解决方案1】:

    这不会是一个完整的答案,但解释太长,无法评论。

    看起来connectivity.cpp包含pad.h,pad.h包含filter.h。我敢打赌,如果您同时查看这两个,包含看起来像:

    #include "pad.h"
    #include "filter.h"
    

    但是 filter.h 有:

    #include <filter.h>
    

    这很令人困惑,但是如果您使用 与“”,编译器查找包含文件的方式会有所不同。使用“”,它看起来相对于执行包含的文件的位置。使用 ,它使用包含文件搜索路径,该路径由 g++ 命令行上的 -I 选项修改。如果您在您发布的 g++ 行中滚动,您可以看到一堆 -I 选项。

    在某个地方还有另一个 filter.h 吗?我在 g++ 行中没有看到 -I ./src。

    filter.h 包含另一个 filter.h 会很奇怪。这有点吓人。

    【讨论】:

    • 我已经寻找了另一个filter.h,但没有任何其他包含。我想这是因为我刚刚设置了我的 linux,而且由于我对 linux 和 C++ 一无所知,我想我搞砸了环境设置。否则我不认为现成的存储库应该抛出任何错误。不过感谢您的帮助。我不知道我该怎么办了。
    猜你喜欢
    • 2023-02-05
    • 2021-06-25
    • 2014-02-20
    • 1970-01-01
    • 2021-11-20
    • 2014-01-18
    • 1970-01-01
    • 1970-01-01
    • 2015-10-26
    相关资源
    最近更新 更多