2011-01-19 27 views
0

M2Crypto聯的OpenSSL使用標準靜態地M2Crypto

python setup.py [build|install] 

步驟構建和安裝該模塊。 distutils/setuptools允許進行一些調整,但我似乎無法找到將OpenSSL靜態鏈接到模塊的方法 - 似乎沒有任何工具可以進行此更改。

有沒有辦法用靜態鏈接的OpenSSL構建M2Crypto? (我願意在setup.py上保釋,如果這是唯一的方法,只想詢問是否有人在我去之前解決了這個問題,並花費數小時來解決已經解決的問題)。

+0

您使用的是哪個平臺?你可以說,爲什麼你想要靜態鏈接時,許多平臺強烈阻止它? – 2011-01-19 22:35:26

+0

平臺是linux和win32。我們從商務部門的出口豁免要求openssl不能由最終用戶通過更換庫來替換,所以我們不能使用共享鏈接。 – 2011-01-19 23:26:32

回答

1

您需要OpenSSL(ssleay32,libeay32)的靜態鏈接庫,您可能必須自行構建它們。在Windows上,您必須更改setup.py以包含更多庫,例如:

-self.libraries = ['ssleay32', 'libeay32'] 
+self.libraries = ['ssleay32', 'libeay32', 'crypt32', 'user32', 'gdi32', 'kernel32', 'ws2_32', 'advapi32'] 

適用於我。