gpt4 book ai didi

linux - 配置 makefile 时如何包含其他目录

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:48:36 24 4
gpt4 key购买 nike

我正在尝试编译 geany-plugins-1.28。调试器插件(我唯一需要的)给出错误:

debug.c:53:21: fatal error: vte/vte.h: No such file or directory
#include <vte/vte.h>

显然它需要知道这个文件所在的位置才能编译。我在主程序geany-1.28的src目录下找到了vte.h文件。运行时

sudo ./configure cflags=-I/home/pi/Desktop/geany-1.28/src

稍后尝试编译调试器插件时,我遇到了关于缺少 header 的相同错误。

我跑了

./configure --help 

获取所有标志选项。输出为 here

如何正确配置它以便编译。我需要自己编译调试器版本 1.28,因为 apt 只安装 1.24,我认为它有一个错误,因为当我运行我的代码时它崩溃并出现错误:

close failed in file object destructor:
sys.execpthook is missing
lost sys.stderr

最佳答案

CFLAGS 是区分大小写的环境变量,所以你应该在运行 configure 之前设置它,而不是试图将它作为命令行参数传递。这个变体:

$ export CFLAGS=-I/home/pi/Desktop/geany-1.28/src
$ ./configure

为当前 shell 保留 CFLAGS 设置,直到您离开它。虽然这样:

$ CFLAGS=-I/home/pi/Desktop/geany-1.28/src ./configure

仅为当前命令设置变量,即configure

其他一些问题:

  • 您不需要sudo 来配置和制作。如果将 PREFIX 设置为您有权写入的路径,则 make install 也没有必要。
  • 插件的构建系统是否也构建它的所有依赖项?否则,稍后您可能会遇到链接器错误。

更新:

我已尝试构建 debugger 插件并消除了您的错误。似乎 Geany 随附的 vte.h 是内在的,而插件需要库中的全功能文件。所以我刚刚从 repos 安装了 vtevte-devel。尽管如此,我还是从 Glib 得到了一些其他不相关的错误。我现在不会继续尝试构建所有这些。希望我的努力至少能有所帮助。

关于linux - 配置 makefile 时如何包含其他目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38358565/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com