2012-09-06 142 views
3

我安装了libffi-3.0.11,因为另一个程序需要它。但是在安装之后,其他程序(通过调用命令./configure)不能识别安装了libffi。我必须设置一个环境变量吗?或者所有变量都是自动设置的?Linux自动设置环境变量?

+0

您可能需要执行'ldconfig'命令。也可以通过执行'ldd'来查看二进制文件,以查看它需要什么以及它在哪里寻找。 – sardok

回答

1

通常有一个LIBPATH,你应该尝试包括你的lib驻留在这个路径中的目录。此外,如果你有一个默认的bash

出口LIBPATH = /您/ libffi /路径:$ LIBPATH

我强烈建议把这个变成一个脚本,并加载它,只要你,让你不自动登录吨需要重复此步骤

/home/yourhome/.profile < - 确保你将它插入到这个文件和它自动加载

这里是一个指导如何做任务: http://archive.linuxfromscratch.org/lfs-museum/5.1-pre1/LFS-BOOK-5.1-PRE1-HTML/chapter06/glibc.html

你可能需要的参数如下: 的./configure --libexecdir =/usr/lib目录:

如果您已经安装了libffi库正确这应该彻底解决你的问题。

+1

'LIBPATH'不影响链接器。您可能会将其与'LD_LIBRARY_PATH'混淆。 –

+0

彼得没有说明连接器的任何事情只是另一个程序需要它,通常如果它是一个共享库,他有一个可执行文件需要libffi这将是足够的,顺便说一句,他说:“安装后” –

+0

@ Oliver Sry它是我的故障。另一个程序(glib-2.33.3顺便说一下)需要LIBFFI用于'./configure' – Peter

1

这取决于,如果您在/usr/local上安装libffi,则应该将您要配置的应用程序的includes目录设置为/usr/local

对于新应用,请尝试./configure --prefix=/usr/local。要查看configure的选项,请使用./configure --help。你能举出一些没有运行的例子吗?