【问题标题】:Python py2app standalone application using nibabel使用 nibabel 的 Python py2app 独立应用程序
【发布时间】:2013-01-17 09:57:14
【问题描述】:

我正在尝试使用 py2app 创建一个 OSx 应用程序。

我使用 py2app 脚本没有问题:

py2applet --make-setup UltraProcCMD.py
python setup.py py2app

当我不使用 nibabel 包时,此应用程序运行良好,但当我使用时,我收到以下错误:

File "nibabel/__init__.pyc", line 38, in <module>
File "nibabel/analyze.pyc", line 91, in <module>
File "nibabel/wrapstruct.pyc", line 111, in <module>
ImportError: cannot import name imageglobals

我已尝试显式导入 imageglobals。即在代码中:

from nibabel import imageglobals

这也会在 py2app 中产生错误,但在 python 解释器中运行的脚本中可以正常工作。

有人知道我错过了什么吗?任何帮助将不胜感激。

编辑:我感觉 py2app 并没有从 nibabel 中提取所有应有的依赖项。有没有办法强制将整个 nibabel 包包含在 py2app 中?

【问题讨论】:

  • 你能通过 Python 解释器导入那个模块吗?
  • 感谢您的回复。 from nibabel import imageglobals 在 python 解释器中工作正常,但在应用程序中不行。

标签: python macos py2app


【解决方案1】:

找到了一个简单的解决方案!

py2app 似乎没有在 nibabel 包中导入所有必需的依赖项,并且 nibabel 包众所周知,可以自定义 py2app recipe

所以使用:

python setup.py py2app --packages nibabel

代替:

python setup.py py2app --packages nibabel

似乎强制 py2app 包含整个 nibabel 包

【讨论】:

  • 我已经向 py2app 的跟踪器添加了一个关于此的问题:bitbucket.org/ronaldoussoren/py2app/issue/104/…> 并打算研究为什么 nibabel 不起作用(并且可能会为其添加配方)
  • 谢谢罗纳德。你的 py2app 脚本很棒。
猜你喜欢
  • 2018-09-21
  • 2020-08-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-20
  • 2010-09-16
  • 1970-01-01
  • 2019-04-18
  • 1970-01-01
相关资源
最近更新 更多