cx_freeze を使用して Python ツールをパッケージ化できますが、必要なライブラリをロードできません。何らかの理由で、出力された実行可能ファイル/バイナリ名がパスに含まれ続けます。
次のエラーが表示されます。
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 にあります。
ツール/依存関係をパッケージ化するために「python setup.py build」を使用しました。
どんな助けでも大歓迎です。オプションの組み合わせを試しましたが、それでも同じエラーが発生します。
私の 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]
)