Autotools - 设置库的路径

时间:2013-12-31 14:09:13

标签: linux autotools autoconf automake

在我的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临时包装脚本而不是可执行二进制文件。

此外,我不想在系统中安装补丁版本的库,直到我在应用程序中测试它。

1 个答案:

答案 0 :(得分:1)

您可以使用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

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

  

因为,使用此方法会生成libtool临时包装脚本而不是可执行二进制文件。

libtool总是为链接共享库的应用程序创建包装脚本。如果您需要在Valgrind或gdb下运行您的应用程序,请参阅此处以获取有关libtool的{​​{3}}选项的更多信息。