57 lines
1.3 KiB
Python
57 lines
1.3 KiB
Python
from distutils.core import setup
|
||
import glob
|
||
import os
|
||
import py_compile
|
||
import site
|
||
import sys
|
||
from zipfile import ZipFile, ZIP_DEFLATED
|
||
|
||
import py2exe # @UnusedImport
|
||
|
||
sys.argv.append("py2exe")
|
||
|
||
sitepackages = site.getsitepackages()[1]
|
||
|
||
py2exe_options = {
|
||
"includes": [],
|
||
"excludes": ["mylibs"], # 不打包这个
|
||
"dll_excludes": ["MSVCP90.dll", "MSVCR90.dll"],
|
||
"compressed": 1, # compressed 值为1,则压缩;为0,不压缩,默认为0
|
||
"optimize": 2, # optimize - 合法值是字符串('','O','OO')或者整型数字 (0, 1, or 2)
|
||
"bundle_files": 1
|
||
}
|
||
|
||
setup(
|
||
name="test",
|
||
version="0.0.1",
|
||
console=[
|
||
{"script": "test.py"}
|
||
], # 括号中更改为你要打包的代码文件名
|
||
zipfile=None,
|
||
options={'py2exe': py2exe_options},
|
||
data_files=[
|
||
# ("","./icon.ico"),
|
||
]
|
||
)
|
||
|
||
cores = glob.glob(os.path.join("mylibs", "*.py"))
|
||
|
||
for core in cores:
|
||
py_compile.compile(
|
||
core, cfile="pyos\\" + core + "o", doraise=True, optimize=2)
|
||
print("compile core module ok")
|
||
|
||
# 添加到压缩文件
|
||
zpfd = ZipFile("dist\\mylibs", "w", ZIP_DEFLATED)
|
||
zpfd.write("mylibs")
|
||
|
||
for core in cores:
|
||
zpfd.write("pyos\\" + core + "o", core + "o")
|
||
zpfd.close()
|
||
print("zip core file ok")
|
||
|
||
# D:\soft\Python34\python setup.py py2exe
|
||
|
||
# windows
|
||
|
||
# console
|