标签: cx-freeze

为可执行文件提供不同的名称,而不是可执行脚本的名称

我使用以下安装文件使用cx_freeze创建可执行文件.是否可以使用除可执行脚本名称之外的其他名称生成exe?

from cx_Freeze import setup, Executable 
import xlrd  
buildOptions = dict(                 
                 compressed = True,
                 optimize=2,                 
                 path=sys.path+[".\\uitls", “.\\supported”], 
                 include_files=[“Doc"],                 
                 includes=[“xlrd”, "win32com"],
                 packages=["utils", ”supported"],
                 append_script_to_exe=True,
                 copy_dependent_files=True,
                  ) 
setup(
                 name = "TestExecutable",
                 version = "0.1",
                 options = dict(build_exe = buildOptions),
                           executables = [Executable(script=r".\\codebase\\runner.py",
                           icon=".\\icon.ico",
                           base="Win32GUI")]                
     )  
Run Code Online (Sandbox Code Playgroud)

所以现在创建的exe文件名为runner.exe,我希望它与myexecutable.exe不同,重命名可执行文件,如果脚本不能正常运行,则脚本模块会进一步引用该脚本.

python cx-freeze

2
推荐指数
1
解决办法
2301
查看次数

使用cx_freeze后,QGraphicsPixmapItem不会出现

我无法理解为什么在使用cx_freeze构建应用程序后我的QGraphicsPixmapItem没有出现.该类和cx_freeze是否有任何已知问题,或者我错过了cx_freeze的一些设置?以下是创建和显示QGraphicsPixmapItem的部分,之后是我的cx_freeze的setup.py:

def partNo_changed(self):
    self.scene.removeItem(self.previewItem)
    partNumber = self.ui.partNo.text()
    fileLocation = 'drawings\\FULL\\%s.svg' % partNumber
    print(fileLocation)
    pixmap = QtGui.QPixmap(fileLocation)
    self.previewItem = QtGui.QGraphicsPixmapItem(pixmap)
    self.previewItem.setPos(0, 0)
    self.scene.addItem(self.previewItem)
    self.ui.svgPreview.centerOn(self.previewItem)
Run Code Online (Sandbox Code Playgroud)

这是setup.py脚本:

from cx_Freeze import setup, Executable

files = ['drawings\\FULL']

setup(
        name = 'DBManager',
        version = '1.0',
        description = 'Makes and maintains the .csv database files.',
        author = 'Brock Seabaugh',
        options = {'build_exe': {'include_files':files, 'bin_path_includes':files}},
        executables = [Executable('dbManager_publicDB.py')])
Run Code Online (Sandbox Code Playgroud)

其他所有东西都在程序中运行,这是唯一不起作用的东西(如果我只运行.py脚本,它会起作用,但是当我运行exe时却不行).我构建或运行exe时没有错误.如果有人可以帮助解决这个问题,那就太棒了.我正在使用Python v3.1和cx_freeze v4.2.3以及PyQt v4.

python pyqt4 cx-freeze python-3.x

2
推荐指数
1
解决办法
531
查看次数

使用cx_Freeze冻结pandas/NumPy 1.7.0代码时出错

我试图用cx_Freeze冻结Python脚本.该脚本使用了pandas.当我运行cx_Freeze创建的可执行文件时,我得到以下Traceback:

[...]  
File "C:\Python27\lib\site-packages\pandas\__init__.py", line 6, in <module>  
from . import hashtable, tslib, lib  
File "ExtensionLoader_pandas_hashtable.py", line 11, in <module>  
File "numpy.pxd", line 156, in init pandas.hashtable (pandas\hashtable.c:20273)  
File "C:\Python27\lib\site-packages\numpy\__init__.py", line 147, in <module>  
from core import *  
AttributeError: 'module' object has no attribute 'sys'
Run Code Online (Sandbox Code Playgroud)

我正在使用的唯一一个pandas代码(用于测试)是:

from pandas import DataFrame
import pandas as pd
d = {'one' : [1., 2., 3., 4.],
     'two' : [4., 3., 2., 1.]}
df = DataFrame(d)
Run Code Online (Sandbox Code Playgroud)

当我尝试在cx_Freeze设置文件中的'packages'下包含'pandas'时,它在冻结过程中失败:

ValueError: too many values to unpack  
Run Code Online (Sandbox Code Playgroud)

我在Windows7(64位)上遇到了32位和64位版本的Python 2.7.3同样的问题.pandas版本为0.10.1,cx_Freeze为4.3.1. …

python numpy cx-freeze pandas

2
推荐指数
1
解决办法
2941
查看次数

cx_freeze和捆绑文件

目前我使用pyinstaller捆绑我的python应用程序.我同样迁移到pyGObject(由于pygtk被折旧).

现在pyinstaller不支持pyGObject,我还没有找到所需的钩子... pyinstaller的另一个缺点是它如何捆绑成一个可执行文件 - 它导致公司安装的病毒扫描程序每次都非常密集地检查exe运行==>启动速度很慢.

由于pyGObject和py3支持,我期待使用cx_freeze,我注意到它没有单一可执行选项.如果可以清理工作目录,那本身就不是问题,可以通过将pyd/dll捆绑到第二个zip或子目录中来实现.

搜索(stackoverflow和其他网站),可以做到这一点,但我没有得到预期的结果.有任何想法吗?

setup.py基于这个:http://wiki.wxpython.org/cx_freeze

python cx-freeze

2
推荐指数
1
解决办法
3489
查看次数

cxfreeze 在带有视网膜显示屏的 macbook pro 上产生模糊的图形用户界面

我正在带有 Retina 显示屏的 macbook pro 上构建一个 pyside 应用程序,这是我的安装文件:

import sys
from cx_Freeze import setup, Executable

# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"packages": ["os", "sys", "PySide", "datetime", "subprocess"], "excludes": ["tkinter"]}

# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
if sys.platform == "win32":
    base = "Win32GUI"


options = {
    'build_exe': {
        'includes': 'atexit'
    }
}

executables = [
    Executable('countdown.py', base=base)
]

setup(  name …
Run Code Online (Sandbox Code Playgroud)

python macos qt pyside cx-freeze

2
推荐指数
1
解决办法
337
查看次数

Pygame:ImportError:libSDL_ttf-2.0.so.0:无法打开共享对象文件:没有这样的文件或目录

游戏从源代码运行良好.当我使用cx_Freeze在Linux上编译二进制文件时,我在第二台机器上遇到错误:

~/tmp/exe.linux-x86_64-2.7 $ ./rungame
/home/local/tmp/exe.linux-x86_64-2.7/library.zip/lib/MenuItem.py:13:   RuntimeWarning: use font: libSDL_ttf-2.0.so.0: cannot open shared object file: No such file or directory
(ImportError: libSDL_ttf-2.0.so.0: cannot open shared object file: No such file or directory)
Traceback (most recent call last):
File "/usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
File "rungame.py", line 10, in <module>
File "/lib/gameloop.py", line 13, in <module>
File "/lib/settings.py", line 10, in <module>
File "/lib/menuitem.py", line 13, in <module>
File "/usr/lib64/python2.7/site-packages/pygame/__init__.py", line 74, in __getattr__
NotImplementedError: font module not available
(ImportError: libSDL_ttf-2.0.so.0: cannot …
Run Code Online (Sandbox Code Playgroud)

python linux pygame sdl cx-freeze

2
推荐指数
1
解决办法
3408
查看次数

Cx_Freeze 构建不包括 zip 文件中的 python 库

我在处理 cx_Freeze 5.0 时遇到了麻烦:Windows 10 LTSB x64 Python 3.4.4 x86 PyQt5 PyWin32 x86

在我重新安装 Windows10 之前,我从来没有遇到过任何问题...

当我冻结我的 python 应用程序(python setup.py build)脚本时,将整个 python 库复制到 python34.zip 之外。我在 python34.zip 中唯一得到的是 *.pyc 文件(只有这个..但很多)

我不知道为什么它现在不包含 python 库并且没有找到任何选项/配置,它必须自动包含这个......

如果有人可以帮助解决这个问题.. :)

注意:我的 setup.py,简单的 setup.py 文件中没有任何变化,从标准示例复制而来,只包含一个资产文件夹(这个是正确复制的......没有问题)

谢谢 !

cx_Freeze 构建输出

python compilation build setup.py cx-freeze

2
推荐指数
1
解决办法
3380
查看次数

[Python][cx-freeze] 导入错误:无法导入名称 'ExcelFormulaParser'

嗨,我在一段 python 代码上运行 cx-freeze 时遇到问题。当我单击 cx-freeze 生成的可执行文件时,它总是抛出错误消息。任何人都可以帮忙吗?- 使用 Python 3.6.1。

我还在另一段 python 代码上运行了 cx-freeze,它运行良好。

错误信息如下:

Last login: Thu Aug 31 14:45:12 on ttys002
EMacBook-Pro:~ E$ /Users/E/PycharmProjects/ImageRename/dist/exportImageName_1 ; exit;
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cx_Freeze/initscripts/__startup__.py", line 14, in run
    module.run()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/cx_Freeze/initscripts/Console.py", line 26, in run
    exec(code, m.__dict__)
  File "exportImageName_1.py", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/xlwt/__init__.py", line 4, in <module>
    from .Worksheet import Worksheet
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/xlwt/Worksheet.py", line 38, in <module>
    from .Row import Row
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/xlwt/Row.py", line 8, in …
Run Code Online (Sandbox Code Playgroud)

python cx-freeze python-3.x

2
推荐指数
1
解决办法
1208
查看次数

我的python脚本使用CX_Freeze-修复模块错误?

这是我的主要代码:

import turtle
import random
from sys import exit
import canvasvg
import os
import tempfile
import shutil
import cairosvg

red = 125
green = 70
blue = 38        
pen = 15
def runChk():
    runAgain = input("Would you like to return to menu? Y/N (N will exit) \n")
    if runAgain.upper() == "Y":
        print("Running...")
        turtle.clearscreen()
        start()
    elif runAgain.upper() == "N":
        print("Exiting...")
        exit()
    else:
        print("Invalid response.")
        runChk()

def saveImg():
    print("Done.")
    save = input("Would you like to save this tree? Y/N \n")
    if save.upper() …
Run Code Online (Sandbox Code Playgroud)

python cx-freeze

1
推荐指数
1
解决办法
1899
查看次数

让BeautifulSoup4 + lxml与cx_freeze一起工作需要什么?

摘要:

我有一个wxPython/bs4应用程序,我正在使用cx_freeze构建一个exe.

构建成功没有错误,但尝试运行EXE会导致FeatureNotFoundBeautifulSoup4出错.它抱怨我没有安装我的lxml库.

我已经将程序剥离到它的最小状态并仍然得到错误.

有没有其他人使用cx_freeze成功构建bs4应用程序?

请查看下面的详细信息,并告诉我您可能有的任何想法.

谢谢,


细节

完整错误回溯:

我已经将应用程序简化为最基本的状态,但仍然会出错.我在Python 3.4上也得到了同样的错误.

Traceback (most recent call last):
  File "C:\WinPython27\python-2.6.7\lib\site-packages\cx_Freeze\initscripts\Console.py", line 27, in <module>
    exec(code, m.__dict__)
  File "test.py", line 6, in <module>
  File "C:\WinPython27\python-2.6.7\lib\site-packages\bs4\__init__.py", line 152, in __init__
    % ",".join(feautres))
FeatureNotFound: Couldn't find a tree builder with the features you requested: xml. Do you need to install a parser library?
Run Code Online (Sandbox Code Playgroud)

我已经尝试过的:

我发现有些人说我需要在构建脚本中包含lxml及其依赖项:http://sourceforge.net/p/cx-freeze/mailman/message/27973651/(对不起SF链接).我试过这个,但仍然没有骰子.

注释掉该行soup = BeautifulSoup("<tag>value</tag>", 'xml')不会导致错误.


版本和文件:

版本:

  • lxml 3.4.4
  • BeautifulSoup4 4.3.2
  • Python 2.7.6(32位)和Python …

python lxml wxpython beautifulsoup cx-freeze

1
推荐指数
1
解决办法
905
查看次数