在带有 Autotools 的 macOS 上,如何告诉 libA 在自定义位置而不是编译器默认位置找到其依赖项 libB?

On macOS with Autotools, how to tell libA to find its dependency libB at a custom location instead of compiler defaults?

我有 libA 和 libB,libA 依赖于 libB。两者都使用 Autotools 作为构建系统。

问题

在 macOS 上,libA 总是试图在 /usr/local/lib 下找到 libB,而源代码结构是这样的

也就是说,它们并排在同一个父文件夹下。

问题

如何指示 libA libB 位于自定义位置而不是编译器默认位置?请注意,libA 可能依赖于其他东西,这可能是系统默认的。只有 libB 在自定义位置。

解决方法

我知道我可以使用 Homebrew 来解决依赖问题。但在这种情况下,我真的很想从源代码构建。

自己解决了。

libA 的 ./configure 支持自定义编译器标志,例如 LDFLAGSCFLAGS。就我而言,它甚至带有自定义标志 libB_CFLAGSlibB_LIBS.

设置了这些自定义标志后,./configure LDFLAGS="$LDFLAGS -lB"。我准备好了。