2014年2月17日23:04:38 星期一
概述:
相信很多人都遇到过和我类似的问题,自己的机器是64位linux系统,从网上下载的源码,编译之后,安装,发现安装到了lib目录下,而不是lib64目录下;
运行程序,就提示找不到链接库,locate命令搜一下,发现在lib下,这可怎么办?
1、简单做法,直接拷贝,
cp /usr/lib/libXXX.so /usr/lib64/
方法简单,一两个文件还行,但文件多怎么办,这么做有点效率低,
2、配置参数做法
就是在configure的时候,将需要的参数指定好;
我们先看一下 帮助;
./configure --help Standard options: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] --bindir=DIR install binaries in DIR [EPREFIX/bin] --libdir=DIR install libs in DIR [EPREFIX/lib] --includedir=DIR install includes in DIR [PREFIX/include] --extra-asflags=EASFLAGS add EASFLAGS to ASFLAGS --extra-cflags=ECFLAGS add ECFLAGS to CFLAGS --extra-ldflags=ELDFLAGS add ELDFLAGS to LDFLAGS --extra-rcflags=ERCFLAGS add ERCFLAGS to RCFLAGS
我们关注一下这几个参数
--prefix=PREFIX 指定这个参数,可以安放执行程序的目录,一般我们指定为 /usr
--exec-prefix=EPREFIX
--bindir=DIR
--libdir=DIR 指定生成库的存放目录 我们指定到 /usr/lib64
./configure --prefix=/usr --libdir=/usr/lib64
如果enable share
./configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 这样配置一下,再编译安装,就可以将生成的库文件,放到lib64目录下了;