2012-12-25 59 views
2

我正在嘗試爲iDevice構建一個支持FIPS的OpenSSL。我正在使用FIPS 2.0設備和1.0.1源代碼。第1步是OpenSSL FIPS對象模塊,它進行得很好。第2步是具有FIPS功能的OpenSSL。具有FIPS功能的OpenSSL和`make depends`

配置FIPS有能力的OpenSSL,我們執行:

./config -no-dtls --with-fiplibdir=/usr/local/ssl/iphoneos/lib 

-no-dtls是必需的,因爲蘋果省略STCP和朋友。我不想在此過程中使STCP和DTLS成爲依賴項,因此-no-dtls是顯而易見的選擇。另外,third party STCP肯定會缺少Xcode和交叉編譯支持。

但是,-no-dtls要求我們運行make dependmake depend導致我:

openssl-1.0.1c jwalton$ make depend 
making depend in crypto... 
../util/domd: line 30: makedepend: command not found 
mv: Makefile.new: No such file or directory 
make[1]: *** [depend] Error 127 
make: *** [depend] Error 1 

我想這個系統(2012 MBP時,Xcode 4.5)上找到makedepend,但它的MIA:

$ find /Applications/Xcode.app/ -name makedepend 2>/dev/null 
$ find /usr/ -name makedepend 2>/dev/null 
$ find /bin/ -name makedepend 2>/dev/null 
$ 

make depend是必不可少的在這裏。當我試圖在沒有它的情況下繼續時,我遇到了STCP問題。因此,要求:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -arch armv7 -O3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -fomit-frame-pointer -fno-common -c -o bss_dgram.o bss_dgram.c 
bss_dgram.c:74:26: error: netinet/sctp.h: No such file or directory 
bss_dgram.c: In function ‘BIO_new_dgram_sctp’: 
bss_dgram.c:843: error: storage size of ‘auth’ isn’t known 
bss_dgram.c:860: error: ‘SCTP_AUTH_CHUNK’ undeclared (first use in this function) 
bss_dgram.c:860: error: (Each undeclared identifier is reported only once 
bss_dgram.c:860: error: for each function it appears in.) 
bss_dgram.c:860: error: invalid application of ‘sizeof’ to incomplete type ‘struct sctp_authchunk’ 

我去了X.org,並提取了軟件包。由於缺少依賴關係,該包不會從源代碼構建。我看到這是在廣告無限期(我以前在那條路上)。

我在這裏有什麼選擇?

+0

的可能重複[Mac OS X的10.8:makedepend] (http://stackoverflow.com/questions/14031513/mac-os-x-10-8-makedepend) – Barmar

回答

3

配置FIPS有能力的OpenSSL,我們執行:

./config -no-dtls --with-fiplibdir=/usr/local/ssl/iphoneos/lib 

DOOH ...應該是... ./config fips -no-dtls