Openssl
不使用 ssl 編譯 ntp
我需要將 ntp 部署到一個空間非常關鍵的 pxe 成像系統。(是的,每個 KB 都很重要。)佔用空間需要盡可能小,所以我想在不連結 openssl 的情況下編譯 ntp。根據手冊,這應該是可能的:
如果可用,來自http://www.openssl.org的 OpenSSL 庫用於支持公鑰加密。該庫必須在建構 NTP 之前建構和安裝。OpenSSL 文件中包含執行此操作的過程。該庫是在正常的 NTP 配置階段和自動編譯的介面常式中找到的。只需要 libcrypto.a 庫文件和 openssl 標頭檔。如果庫不可用或已禁用,則不需要此步驟。
我已經試過了
./configure --without-openssl
然而,這並沒有幫助。這是我的 ldd 輸出:
ldd ntpd/ntpd linux-gate.so.1 => (0xb7706000) libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb76d5000) libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7582000) librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb7578000) libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb741d000) /lib/ld-linux.so.2 (0xb7707000) libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7419000) libz.so.1 => /usr/lib/libz.so.1 (0xb7404000) libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb73eb000)
我正在編譯的系統是使用 openssl 0.9.8g-15+lenny16 的 32 位 debian lenny。
在沒有 openssl 的情況下編譯 ntp 的正確配置選項是什麼?
知道了!
通過研究配置腳本,我發現您實際上必須使用
./configure --without-crypto
代替
./configure --without-openssl
為我工作:
[me@risby ntp-4.2.6p5]$ ./configure --without-openssl && make [me@risby ntp-4.2.6p5]$ ldd ntpd/ntpd linux-vdso.so.1 => (0x00007fffd516c000) libm.so.6 => /lib64/libm.so.6 (0x0000003838a00000) librt.so.1 => /lib64/librt.so.1 (0x0000003838600000) libc.so.6 => /lib64/libc.so.6 (0x0000003837a00000) libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003837e00000) /lib64/ld-linux-x86-64.so.2 (0x0000003837600000)
你能告訴我們它不適合你嗎?(別忘了先做一個
make distclean
。)編輯:是的,我確實安裝了它:
[me@risby ntp-4.2.6p5]$ rpm -qa|grep openssl openssl-1.0.0k-1.fc17.x86_64 openssl-devel-1.0.0k-1.fc17.x86_64
您沒有告訴我們您的發行版(甚至作業系統,儘管我們從您的
ldd
輸出中知道它是 Linux)。也許這是一個更具體的好時機?