【问题标题】:Parachute Segmentation Fault Error - pygame to py2exe降落伞分段错误 - pygame 到 py2exe
【发布时间】:2012-06-28 10:53:03
【问题描述】:

我正在使用 GUI2Exe 将我的 python/pygame、游戏编译为 .exe

我的字体模块有问题。

在 GUI2Exe 中使用 python 2.7 和 py2exe 选项 我已经用 2.7 版本更新了 python、pygame 和 py2exe。 我的程序运行良好,但在我用 py2exe 编译后我得到了这个。

这是我得到的错误:

Fatal Python error: (pygame parachute) Segmentation Fault

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

我的游戏从控制台开始,然后运行该部分。但是一旦显示开始我就会崩溃。

谢谢

【问题讨论】:

  • 我不认为这是一个重复的问题,但它与这个问题非常相似:stackoverflow.com/questions/6646154/… 我建议您点击链接,看看它是否有助于回答您的问题?
  • 我已经尝试使用该链接中的 pygame 版本,但它导致了同样的错误。然而,在阅读完这篇文章后,我从头开始并再次使用了 pygame 版本。这次它运行良好,完全没有问题。我不知道我做了什么不同,但我的问题现在已经解决了,谢谢!

标签: python python-2.7 pygame py2exe gui2exe


【解决方案1】:

也遇到过类似的问题。找到了解决它们的方法:

几周后(甚至之前也遇到过这个问题)我很高兴地说我解决了这个问题! :)

我的问题的第一部分 (http://i.stack.imgur.com/WpkjR.png): 我通过编辑 setup.py 脚本并在其中添加“排除”部分来解决它。这导致成功制作可执行文件!

修改 setup.py 脚本:

from distutils.core import setup
import py2exe
setup(windows=['source_static.py'], options={
          "py2exe": {
              "excludes": ["OpenGL.GL", "Numeric", "copyreg", "itertools.imap", "numpy", "pkg_resources", "queue", "winreg", "pygame.SRCALPHA", "pygame.sdlmain_osx"],
              }
          }
      )

所以,如果您有类似的问题,只需将那些“缺失”的模块放入此“排除”行。

第二部分:

在我成功制作可执行文件后,我遇到了下一个问题:"应用程序以异常方式请求运行时终止它。请联系..."。经过几天和几天的搜索和思考如何解决另一个问题,我找到了一种方法。我无法相信这个问题是如此荒谬。问题出在我的代码中,字体定义:

font1 = pygame.font.SysFont(None, 13)

在将“None”更改为某个系统字体名称(例如“Arial”(必须是字符串))并编译后,我不敢相信我的 .exe 文件可以正常工作!

font1 = pygame.font.SysFont("Arial", 13)

当然,你可以使用自己的字体,但你必须指定它的路径并在你的程序中定义它。

因此,对于所有遇到此问题的人,请尝试以下步骤,希望您能成功。 我真的希望这会对您有所帮助,因为我已经浪费了几天和几周的时间来尝试解决这些问题。我什至尝试使用所有版本的 python 和 pygame 以及许多其他 .exe 构建器和设置脚本来制作我的 .exe 文件,但没有运气。除了这些问题,我之前也遇到过很多其他问题,但我在 stackoverflow.com 上找到了答案。

很高兴我找到了解决这些问题的方法,并在您遇到相同问题时为您提供帮助。

小技巧(我也做过):

第一个:将您的 Microsoft Visual C++ 库更新到最新版本。

第二个:如果您有可执行程序所需的类似图像或字体,请将它们包含到 dist 文件夹(您的 .exe 文件已在其中创建)。

第三:当你制作你的 .exe 文件时,将所有需要的文件包含到你的 setup.py 脚本所在的文件夹中(你的主脚本使用的所有文件和目录)。

使用 Python 2.7 x64pygamepy2exe

【讨论】:

    【解决方案2】:

    不要使用 gui2exe 使用此链接中的此文件:http://pygame.org/wiki/Pygame2exe

    按照说明操作并根据需要修改文件。将文件放在与“游戏”主目录相同的目录中,然后从控制台运行文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多