2017-09-20 4 views
0

私はGAEサンドボックスをWindows、python 2.7およびvirtualenvで使用しています。 私は要求のLIBを使用しようとすると、私は次のエラーを取得しています:グローバル名 '_dlopen'が定義されていません

global name '_dlopen' is not defined 

フルスタック:Windows上

INFO  2017-09-20 13:40:20,551 module.py:821] default: "GET/HTTP/1.1" 500 
     from ctypes import (c_buffer, POINTER, byref, create_unicode_buffer, 
    File "c:\python27\Lib\ctypes\__init__.py", line 450, in <module> 
     pythonapi = PyDLL(None) 
    File "c:\python27\Lib\ctypes\__init__.py", line 362, in __init__ 
     self._handle = _dlopen(self._name, mode) 
    NameError: global name '_dlopen' is not defined 

GAEは、負荷のctypesととwinregを持つ問題を持っていたが、それは今ホワイトリストに登録です自動的に開発環境に移行します。

私には何が欠けていますか?

+0

私は特有の同じ問題を抱えていますWindows 10.すべてをアンインストール/再インストールしたが、全く喜んではいなかった。 Googleなどからすべてのインストール手順を明示的に(何度も何度も見逃さないように)繰り返しました。 セットアップは非常に簡単です。 Flaskを使用しようとする地元のSDK GAEプロジェクト、こんにちは世界の品質。非常に裸の骨。 Python 2.7では、通常のベースにはGAEが必要でした。 同じ手順/アプリケーションコードがMacで実行されます。私はインストールされた土台が異なっていることを理解しますが、この開発はWindows上では問題があるようです(mrcvパッケージの問題などもあります)。 –

答えて

0

だから私は、問題の原因が見つかりました: それが回避策は、問題がos.name=None意味のctypesを変更すると、正しいDLLのロードライブラリを使用することはできませんでしたhttps://stackoverflow.com/a/25915535/3767514

で示唆されました。

ctypesののinitライン457:

if _os.name in ("nt", "ce"): 
windll = LibraryLoader(WinDLL) 

ので、解決策はappengine_config.pyでNoneにos.nameを変更する前にctypesをインポートしました:

import os 
if os.name == 'nt': 
import ctypes 
os.name = None 
関連する問題