使用py2app打包时,如何知道要包含哪些模块?

How do I know which modules to include when packaging with py2app?

我正在尝试打包一个我没有编写的开源应用程序的Mac版本(我不是一个编码人员)。我用的是PY2APP 0.6.4。应用程序正确地构建在我的系统上,但我不确定要为setup.py文件中的includes列出什么。

依赖关系包括qt4、pyqt、matplotlib、cherrypy和sip。

当我查看有关处理Pyqt应用程序的这篇文章时,我注意到依赖项并不是简单地作为Pyqt列出的,而是*Pyqt4.u qt*等。如何从应用程序的代码确定要在include语句中插入什么?


当py2app运行时,它将查看每个脚本,自动获取脚本导入的任何模块或包。在许多情况下,这就足够了,您不需要在include变量中列出任何内容。有些包有额外的文件,如数据文件,这些文件不是import语句使用的,但必须存在才能使包正确运行。然后,您需要显式地包含它,以便py2app也将获取它。尝试使用您的应用程序;如果您发现某个模块或文件找不到错误,请担心将其放入include变量中。