Python PyInstaller创建的可执行文件不工作

Python PyInstaller创建的可执行文件不工作,python,pygame,cross-platform,build-process,pyinstaller,Python,Pygame,Cross Platform,Build Process,Pyinstaller,我用python和pygame创建了一个简单的游戏,我想为每个平台创建一个可执行文件,所以人们不需要安装很多依赖项就可以尝试我的游戏。看来pyinstaller就是我要找的,所以我把它安装在我的Ubuntu机器上,我在那里开发了这个游戏。我尝试使用以下命令运行它: pyinstaller --onefile main.py 可执行文件的创建似乎是正确的,但当我运行它时,会出现以下错误: Traceback (most recent call last): File "<stri

我用python和pygame创建了一个简单的游戏,我想为每个平台创建一个可执行文件,所以人们不需要安装很多依赖项就可以尝试我的游戏。看来pyinstaller就是我要找的,所以我把它安装在我的Ubuntu机器上,我在那里开发了这个游戏。我尝试使用以下命令运行它:

pyinstaller --onefile main.py 
可执行文件的创建似乎是正确的,但当我运行它时,会出现以下错误:

Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/usr/local/lib/python2.7/dist-packages/PyInstaller/loader/pyi_importers.py", line 270, in load_module
    exec(bytecode, module.__dict__)
    File "/home/loris/Dropbox/Workspace/Python/pyMemory/build/main/out00-PYZ.pyz/pygame", line 99, in <module>
ImportError: No module named base
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/usr/local/lib/python2.7/dist packages/PyInstaller/loader/pyi_importers.py”,第270行,在load_模块中
exec(字节码、模块、指令)
文件“/home/loris/Dropbox/Workspace/Python/pyMemory/build/main/out00 PYZ.PYZ/pygame”,第99行,在
ImportError:没有名为base的模块
我真的不知道该怎么解决这个问题,而且我似乎找不到其他人有同样的问题,所以有什么我可以检查来尝试解决这个问题吗

编辑:


我成功地在Windows上创建了一个32位的可执行文件,所以我认为问题出在我使用的64位版本的python上,所以我尝试将pyinstaller应用到32位的Ubuntu虚拟机中,但结果是一样的。

pygame是否安装在
/usr/local/lib/python2.7/站点软件包中?(我想这是linux上的目录…你能在windows机器上构建exe吗?顺便说一下,我建议使用32位python(不确定你是否使用64位python…但我对64位python可执行文件有问题)。我不知道pygame安装在哪里。我只是运行了一个“apt get install python pygame”。您提供的目录看起来是空的。IIRC,Ubuntu会仔细设置,这样
pip
apt
就不会互相攻击,所以
pip-install-spam
会安装到
/usr/local/lib/python2.7/site-packages
,而
apt-get-install-python-spam
会安装到
/usr/lib/python2.7/site-packages
,两者都在
sys.path
上,前者在前面。但是也有
site-packages
dist-packages
。好吧,pygame似乎位于我的机器中的/usr/lib/python2.7/dist-packages中,如果这有帮助的话。是的,我用这种方式标记它,因为我计划“编译”它也可以在Windows和Mac上使用。