gpt4 book ai didi

c++ - 配置期间找到的库,但不是 make

转载 作者:行者123 更新时间:2023-11-28 08:04:10 25 4
gpt4 key购买 nike

我正在尝试使用 automake 和 autotools 捆绑一个小型 C++ 程序。在我当前的设置中,所需的库安装在 configure 脚本能够找到的位置,但在从 make 调用 g++ 时找不到。

我可以通过在调用 configure 时传递相关的 -I 选项来解决这个问题(以便将正确的包含路径传递给编译器),但是我' d 希望 configure 脚本在 make 找不到库时也找不到它。

或者,我希望配置脚本生成必要的 -I 命令,以便编译器找到它需要的一切。

是否有一些标准的方法可以做到这一点?

最佳答案

您的配置脚本可能已损坏,或者您对配置输出的解释:

如果您的库检查在配置期间检查它是否可以链接到某个库,这决不能保证您有可用(或可找到)的所需 header 进行编译。

因此,您应该在 configure.ac 中为库和 header 添加检查

AC_CHECK_LIB([foo], [foo_init])
AC_CHECK_HEADERS([foo.h])

并且只假设您可以在 lib 和 header 都存在的情况下进行构建。

如果找不到 header 并且您知道它们在哪里,您可以添加这些路径(在配置中)并重新运行测试。考虑到你必须添加非常标准的路径('/usr/local/include' 在任何情况下都应该是自动搜索路径的一部分;'/sw/include' 是 fink 的一部分,所以你应该确保你初始化了你的系统正常运行

$ . /sw/bin/init.sh

在尝试运行 ./configure 之前在终端中(省略“$”)

关于c++ - 配置期间找到的库,但不是 make,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10658187/

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