2011-02-17 2 views
4

В настоящее время я работаю над приложением, которое использует py2exe для создания exe-файла из небольшого кода Python, который использует matplotlib. Он работает очень хорошо, за исключением того, что мои исполняемые файлы массивны. Запуск сценария конверсии под ним создает 43,5 МБ пакета (exe и его зависимости). Я знаю, что есть некоторые вещи, которые можно сделать, чтобы сократить размер моего приложения.Вставка py2exe и matplotlib на диете

Любые советы по сокращению размера моего приложения?

Мой сценарий преобразования:

from distutils.core import setup 
import py2exe 
import matplotlib 

setup(


windows=[{'script': r'ElectronOrbitalGenerator.py'}], 

data_files=matplotlib.get_py2exe_datafiles(), 

options={r'py2exe':{r'includes': r'ElementConfig', 
        r'includes': r'ColorConv', 
        r'includes': r'Tkinter', 
        r'includes': r're', 
        r'includes': r'math', 
        r'includes': r'sys', 
        r'includes': r'matplotlib', 
        r'includes': r'mpl_toolkits', 
        r'dll_excludes': [r'MSVCP90.dll'], 
        }}, 


) 

Все эти модули моя программа должна работать:

import ElementConfig, ColorConv 

import Tkinter, re, math, sys 

import matplotlib.pyplot as plt 

from mpl_toolkits.mplot3d import Axes3D 
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg 
from matplotlib.figure import Figure 
+1

См http://stackoverflow.com/questions/3528763/py2exe-reduce-size-of-the-library-archive –

ответ

6

Если вы используете Matplotlib, чтобы показать некоторую диаграмму, используя по умолчанию шрифта и т.д. вы можете просто удалите в dist/mpl-data папку все, кроме matplotlib.conf и matplotlibrc.

Я сделал это и сохранил abot 4MB на 12MB.

Почему ваше расстояние является 43.5MB, вероятно, не все из-за Matplotlib ...

Смежные вопросы