2012-09-29 3 views
5

Py2Exeから.exeを作成しようとするとPyOpenCLモジュールに何らかの問題があります。 Py2Exeは、実行する必要があるように.exeを作成します(「ImportError:No module pyopencl」はありません)。ただし、.exeを実行しているときはpyopenclという名前のモジュールはありません。pyopencl(Py2exe)という名前のモジュールがありません

私はPhoenix Minerの.exeを作成しようとしています。

私のsetup.py:私は私http://bytes.com/topic/python/answers/848048-py2exe-module-errorとしてではなくなし溶液で同じ問題を抱えていた誰かを見つけ

from distutils.core import setup 
import py2exe, sys, os, pyopencl 

sys.argv.append('py2exe') 

setup(
    options = {'py2exe': {'bundle_files': 1, 
          "includes":["pyopencl","twisted", 
             "zope","QueueReader", 
             "numpy"]}}, 
    console=[{'script' : 'phoenix.py'}], 
    data_files=["C:\\Users\\Nicklas\\Desktop\\Phoenix-Miner\\kernels\\poclbm\\kernel.cl"], 
    zipfile = None, 
) 

更新日: このエラーの原因が見つかりました。には、_find_pyopencl_include_pathという関数がありますが、それは何をしているのかを自明に説明しています。長い話をするには、impモジュールはpyopenclモジュールを見つけることができません。これを修正するために、私はその行をコメントアウトし、パス名をpyopenclsのディレクトリへのパスに設定しました。おそらく良い修正ではありません。しかし、それは簡単な修正でした。

+0

実際にあなた自身の質問に答えてもOKです。タイトルに 'py2exe'を入れて、それは良い自己回答の質問をするでしょう。 – nneonneo

答えて

4

このエラーの原因が見つかりました。 __init__には、_find_pyopencl_include_pathと呼ばれる機能がありますが、それは何をしているのか全くわかりません。長い話を短くするにはimpモジュールがpyopenclモジュールを見つけられません。これを修正するために、私はその行をコメントアウトし、パス名をpyopenclsのディレクトリへのパスに設定しました。おそらく良い修正ではありません。しかし、それは簡単な修正でした。

+0

この回答をお寄せいただきありがとうございます。今日、新しいGUIMinerリリースを実行して同じ問題が発生したとき、私は時間を節約しました。 – Kiv

+0

面白いことを知っていますか?その行のすぐ下にあるコメントを見てください: #Pythonのインストールはとても統一されており、予測可能ですか? – RjQuery

+0

おかげで、あなたは私の一日を救った... – d0c

関連する問題