gpt4 book ai didi

linux - Autotools - 设置库路径

转载 作者:太空宇宙 更新时间:2023-11-04 11:16:12 27 4
gpt4 key购买 nike

在我的 debian 系统中有一个已安装的库。我不想为库和使用它的应用程序打补丁。因此,我下载了库和应用程序包的源代码。然后我修补了一个库并构建了它(没有将它安装到系统中)。

现在,当我./configure 应用程序时,autotools 会检测系统的库版本,而不是我的版本。所以,我做了 ./configure CFLAGS=-I/home/aquirel/dev/vte-0.28.2/src LDFLAGS=-L/home/aquirel/dev/vte-0.28.2/src/.libs

有没有更智能的方法呢?因为,使用这种方法会生成 libtool 临时包装脚本而不是可执行二进制文件。

而且,在应用程序中测试之前,我不想将库的补丁版本安装到系统中。

最佳答案

您可以使用 DESTDIR 安装 vte 包安装:

$ cd /home/aquirel/dev/vte-0.28.2
$ make DESTDIR=/home/aquirel/dev/test-vte install

这会将所有头文件/库安装到 /home/aquirel/dev/test-vte 中,就好像它是 / 一样。您必须以稍微不同的方式设置路径以configure:

$ ./configure CFLAGS=-I/home/aquirel/dev/test-vte/usr/local/include LDFLAGS=-L/home/aquirel/dev/test-vte/usr/local/lib

并为 vte 共享库以及您的应用程序测试环境设置 LD_LIBRARY_PATH

Because, using this approach generates libtool temporary wrapper script instead of a executable binary.

libtool 总是为链接共享库的应用程序创建包装器脚本。如果您需要在 Valgrind 或 gdb 下运行您的应用程序,请参阅此处了解有关 libtool--mode=execute 的更多信息。选项。

关于linux - Autotools - 设置库路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20858617/

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