Ubuntu
openssl-1.0.1e 在 Debian 上編譯
我正在Debian Lenny(armv4 架構)上編譯OpenSSL-1.0.1e 。我一直按照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
)以用舊的二進製文件替換新的二進製文件?我應該如何更新程序?EDIT2:
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
可能發生的情況是:您的 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)?