2012-01-12 9 views
0

Google Apps Engineにm2cryptoをインポートする際に問題が発生しています。私は問題を知っていると思うが、それを修正する方法を知らない。とにかく、ここに私のディレクトリ構造があります。私はこのfrom M2Crypto import EVPを行うとm2cryptoをGoogleアプリケーションエンジンにインポートする

mysite/ 
    app.yaml 
    main.py 
    urls.py 
    ... 
    M2Crypto/ 
     __init.py__ (I think the problem is here) 
     EVP.py 
     ... 
    SWIG/ 
     (there is no __init.py___ file here) 
     _m2crypto.i 
     ... 

、私は<type 'exceptions.ImportError'>: No module named __m2cryptoを言うエラーメッセージが表示されます。このエラーは__init.py__ファイルにあり、22行目でimport __m2cryptoを試行しますが、M2Cryptoディレクトリには__m2cryptoというファイルはありません。

私はM2Cryptoのバージョン0.21.1を使用しており、M2CryptoとSWIGを自分のアプリケーションにコピーしました。私もM2Crypto-0.21.1.tar.gzのすべてのファイルを自分のアプリケーションにコピーしようとしましたが、それもうまくいきませんでした。前もって感謝します。

+0

ソースコードをコンパイルしましたか? Pythonラッパーとは別にコンパイルする必要がある共有ライブラリが必要です。 – jcollado

+0

私はそうは思わない、単にM2Crypto-0.21.1.tar.gzを解凍し、M2CryptoとSWIGのディレクトリを取り出した。私は別のパッケージ(gdata)でこれをやって、うまくいきました。 – mrmo123

+0

誰かが私の他の質問(http://stackoverflow.com/questions/8776385/rsa-encryption-routines-for-google-app-engine-python/8799470#comment11036794_8799470)で、m2cryptoにCコードが含まれていて、 GAEでの作業。しかし、あなたの助けをありがとう – mrmo123

答えて

3

m2cryptoにはいくつかの要件があり、App Engineではうまく機能しないようです。あなたのアプリケーションはsandboxedです。使用するライブラリはすべて純粋なPythonでなければなりません。

あなたが実際にやろうとしていることを述べていませんが、PyCryptoはincluded with App Engineです。また、URLFetchサービスを使用して調べることもできます。

+0

あなたのお返事ありがとうございます。私はアマゾンクラウドフロントのために署名されたURLを作るためにGoogleのアプリケーションエンジンを取得しようとしています。これまでのところ、私はM2Cryptoを使って行うチュートリアル(http://stackoverflow.com/questions/6549787/getting-started-with-secure-aws-cloudfront-streaming-with-python)を知っています。 – mrmo123

関連する問題