减少py2exe分布大小,同时包括一些numpy函数

时间:2015-08-26 01:03:38

标签: python python-2.7 numpy py2exe software-distribution

我有一个目前依赖于numpy的程序,我一直致力于使用py2exe进行转换。我的问题是即使使用诸如

之类的脚本
from numpy import array
print array(1)

仅使用函数numpy.array,我无法找到任何方法来排除numpy包中看似不必要的部分,例如numpy.linalg由{py2exe创建的分发中1}}。这导致分发大小超过80MB(拉链后为30MB)。名为numpy.linalg._umath_linalg.pyd的文件夹中有一个34MB的文件,另一个名为numpy.linalg.lapack_lite.pyd的文件是18MB - 这些文件真的需要存在吗?!如果简单删除.exe,则py2exe不会运行。

我的问题是,如何减少分配结果?我知道有numpy的替代品,如果我可以删除对from distutils.core import setup import py2exe, sys import shutil sys.argv.append('py2exe') # No need to type in command line. py2exe_options = { # 'excludes': ['numpy.linalg'], # Stopped the resulting exe from running 'compressed': True, # Saves 5MB, is this at the cost of some speed? 'optimize': 1 # I don't really understand what this does. } setup( windows=[{'script': 'main.pyw'}], options={'py2exe': py2exe_options}, ) shutil.rmtree('build', ignore_errors=True) # Remove the build folder 的依赖,我就不会没有这个问题,但我想坚持这两个。

我正在使用以下设置脚本,导致87MB分发。

{{1}}

0 个答案:

没有答案