我正在编译OpenSSL-1.0.1e在 Debian Lenny(armv4 架构)上。我一直在遵循以下说明http://www.linuxfromscratch.org/blfs/view/svn/postlfs/openssl.html编译源代码。make
并make test
顺利完成。我想知道我应该如何继续编译文件。
我应该做make install
还是坚持指示并做
make MANDIR=/usr/share/man MANSUFFIX=ssl install &&
install -dv -m755 /usr/share/doc/openssl-1.0.1e &&
cp -vfr doc/* /usr/share/doc/openssl-1.0.1e
编辑:我做了这两种方法,但我仍然有旧版本的 openssl。我是否需要复制openssl
二进制文件并将其粘贴到特定目录(例如,/usr/bin
)以用旧二进制文件替换新二进制文件?我该如何更新程序?
编辑2:make test
输出:所有测试成功。
make[1]: Leaving directory `/home/openssl-1.0.1e/test'
OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Jun 10 05:08:05 UTC 2013
platform: dist
options: bn(32,32) rc4(ptr,int) des(idx,cisc,2,long) idea(int) blowfish(idx)
compiler: cc -O
OPENSSLDIR: "/usr/local/ssl"
make install
输出:
make[1]: Leaving directory `/home/openssl-1.0.1e/engines'
making install in apps...
make[1]: Entering directory `/home/openssl-1.0.1e/apps'
installing openssl
installing CA.sh
installing CA.pl
installing tsget
make[1]: Leaving directory `/home/openssl-1.0.1e/apps'
making install in test...
make[1]: Entering directory `/home/openssl-1.0.1e/test'
make[1]: Nothing to be done for `install'.
make[1]: Leaving directory `/home/openssl-1.0.1e/test'
making install in tools...
make[1]: Entering directory `/home/openssl-1.0.1e/tools'
make[1]: Leaving directory `/home/openssl-1.0.1e/tools'
installing libcrypto.a
installing libssl.a
cp libcrypto.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/libcrypto.pc
cp libssl.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/libssl.pc
cp openssl.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/openssl.pc
答案1
可能发生的情况是:你的openssl debian包放在了/usr/bin, /usr/lib, /usr/share/man
,编译出来的完全在里面/usr/local/{bin,share,lib}
。您的 shell/usr/bin
首先(从包中)找到二进制文件并执行它。
您需要./config --prefix=/usr
在配置 OpenSSL 时使用,但这可能会覆盖通过 apt 安装的二进制文件,并且可能会破坏您的系统。更好更正确的编译方法是使用debian源码包。
是否有任何您想要的功能未在稳定版本上编译(http://packages.debian.org/source/wheezy/openssl)?