2011-10-24 83 views
1

我試圖在64位centos 5.6和/或rhel 5.6上運行m2crypto。我已經編譯了python 2.6並放置在一個單獨的目錄中(在centos/rhel上是必需的)。我試着編譯m2crypto與內置的openssl 0.9.8e以及手動編譯0.9.8e,並且行爲是相同的。我甚至嘗試過epel的python26和python26-m2crypto。它也崩潰。64位centos m2crypto在load_key期間崩潰

 
[[email protected] ~]# /usr/local/bin/python m2test.py 
Segmentation fault 

的代碼是:

 
-----BEGIN RSA PRIVATE KEY----- 
MIIBOgIBAAJBAK/y+9J2tnTq0ZhesUV2BjtbY2ND+ZBsIPMACUCFGTbMS59JJ05e 
0s2WVqb7ljvm/KsWtJ9qoqnljeaX64E9llECAwEAAQJABZOA0Zm7jJcIj3ioy5fC 
+MybqMC1vxL+NFVS9b2CIA9p/f/F/FAZtSOL/+FvvccxnhNogB+J4VMXTbbEURn0 
5QIhANceLguDtazhDyjj+tVyIvGrkOfPEUs3lNWpiVABYea7AiEA0WMvE+SImzug 
Tj+PSDf2puHQqvoBFz9qJ+5pcT1EVGMCIHOMx4jx162kOqNpSnxK0dBkqvKJfK2d 
jnnylkp+Y5svAiBbH4f4Z0eQDvXnt796VWiRHcr67YwV+vIO6LGYp2oaMwIhAKBc 
ig+JAHsT9R5Gq9TZ67YcdfI4LHFdswXw/e7eBCs4 
-----END RSA PRIVATE KEY----- 

同樣的測試工作在32位(當然,我們的應用程序:

from M2Crypto import EVP 

file = './foo' 
cert_priv_key = EVP.load_key(file) 

的關鍵FOO(使用OpenSSL genrsa該測試生成)使用這很多)。也許我已經用64位的錯誤選項編譯了python或openssl。兩者都啓用並安裝了共享庫,添加到ldconfig等。

任何人都有提示嗎?有沒有人在64bit上成功運行python26 + m2crypto?

+0

你應該添加你的更新作爲一個正確的答案;編輯你的問題的答案是不正確的。 –

+1

@JvilHuber:請將解決方案發布爲答案並接受它。這是它在StackOverflow上的工作原理。 – Tadeck

+0

這不是更多的超級用戶項目嗎? –

回答

0

對於Centos5我做了以下內容:

cd /tmp/ 
mkdir rpmbuild 
cd rpmbuild/ 
wget http://downloads.sourceforge.net/project/swig/swig/swig-1.3.40/swig-1.3.40.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fswig%2Ffiles%2Fswig%2Fswig-1.3.40%2F&ts=1356897393&use_mirror=ignum 
tar xzvf swig-1.3.40.tar.gz 
cd swig-1.3.40 
./configure 
make 
make install 
yum info swig 
/usr/local/bin/swig -version 
mv /usr/bin/swig /usr/bin/swig-1.3.29 
cd /usr/bin/ 
ln -s /usr/local/bin/swig 

然後在接下來的步驟中輸入我的virtualenv目錄,激活它,從網站,包裝中取出所有M2crypto雞蛋。然後通過yum下載m2crypto來源,解壓縮它,輸入目錄,然後執行./fedora_setup.py。而已。完成。

最新的Centos5更新沒有依賴問題。