繁体   English   中英

自动工具-设置库的路径

[英]Autotools - set path to library

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

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

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

而且,在我在应用程序中对其进行测试之前,我也不想在系统上安装库的修补版本。

您可以使用DESTDIR install安装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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM