Я могу использовать cx_freeze для упаковки моего инструмента python, но мне не нужна загруженная библиотека. По какой-то причине выводимое исполняемое/двоичное имя продолжает включаться в путь.cx_freeze встраивает мою библиотеку разделяемых объектов в двоичный исполняемый файл?
я получаю следующее сообщение об ошибке:
OSError: /home/derekx/sbu/build/exe.linux-x86_64-2.7/secure_boot_utility/lib/libcrypto.so.1.0.0: не могу открыть файл разделяет объект : Не каталог
библиотека получает упаковано /home/derekx/sbu/build/exe.linux-x86_64-2.7/lib/libcrypto.so.1.0.0
созданное двоичный «secure_boot_utility» является также в файле build/exe.linux86_64-2.7.
Входящие скрипты и setup.py находятся в/home/derekx/sbu.
Я использовал «питон setup.py сборки», чтобы упаковать инструмент/зависимостями ..
Любая помощь будет принята с благодарностью. Я попробовал комбинацию параметров, но все равно получаю ту же ошибку.
Мой setup.py является:
import sys
from cx_Freeze import setup, Executable
sys.path.append('sbu_scripts/')
sys.path.append('lib/')
binincludes = ['libcrypto.so.1.0.0']
binpaths = ['/home/derekx/sbu/lib']
includefiles = [('lib/libcrypto.so.1.0.0','lib/libcrypto.so.1.0.0'),]
exe = Executable(
script="secure_boot_utility.py",
)
setup(
name = "SecureBoot",
version = "0.1",
description = "Test Secure Boot",
options = {"build_exe": {'copy_dependent_files':True, 'create_shared_zip':True, 'bin_includes':binincludes, 'bin_path_includes':binpaths, 'include_files':includefiles}},
executables = [exe]
)
Я этого раньше не видел. Можете ли вы попробовать скопировать библиотеку в ту же папку, что и исполняемый, а не в подпапку 'lib /'? –
Да. Опция «copy_dependent_files»: True, похоже, копирует несколько библиотек, которые мне нужны (включая libcrypto) на том же уровне, где создается исполняемый файл. Если я включил include_files, чтобы скопировать один уровень вверх, я все равно получаю ту же проблему, когда запускаю исполняемый файл. Спасибо –
Если я добавлю zip_include, чтобы библиотека была добавлена в zip-файл как lib/libcrypto.so.1.0.0, я все равно получаю ту же ошибку :( –