Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PyInstaller Application Won't Run #1841

Closed
thw26 opened this issue Sep 20, 2024 · 3 comments
Closed

PyInstaller Application Won't Run #1841

thw26 opened this issue Sep 20, 2024 · 3 comments

Comments

@thw26
Copy link

thw26 commented Sep 20, 2024

I am developing a Python application that installs and manages a Windows program. The app is distributed through a prebuilt binary created from PyInstaller.

I built the latest box64 source and I am seeing the following error when attempting to run the prebuilt x86_64 pyinstaller binary.

This is not the biggest of concerns to me as I can always build a separate ARM64 prebuilt binary, but I thought I should share this.

Dynarec for ARM64, with extension: ASIMD AES CRC32 PMULL ATOMICS SHA1 SHA2 PageSize:4096 Running on Cortex-A55 with 4 Cores
Will use Hardware counter measured at 24.0 MHz emulating 3.0 GHz
Params database has 90 entries
Box64 with Dynarec v0.3.1 1978ec8b built on Sep 19 2024 22:05:34
BOX64: Detected 48bits at least of address space
Counted 73 Env var
BOX64 LIB PATH: BOX64 BIN PATH: ./:bin/:/home/thwright/bin/:/usr/local/sbin/:/usr/local/bin/:/usr/bin/:/var/lib/flatpak/exports/bin/:/usr/lib/jvm/default/bin/:/usr/bin/site_perl/:/usr/bin/vendor_perl/:/usr/bin/core_perl/:/var/lib/snapd/snap/bin/:/home/thwright/.local/bin/:/home/thwright/bin/
Looking for ./Downloads/LogosLinuxInstaller
Apply RC params for LogosLinuxInstaller
Applying BOX64_DYNAREC_BIGBLOCK=0
Applying BOX64_DYNAREC_SAFEFLAGS=2
Applying BOX64_DYNAREC_CALLRET=0
Rename process to "LogosLinuxInstaller"
Using native(wrapped) libdl.so.2
Using native(wrapped) libz.so.1
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Dynarec for ARM64, with extension: ASIMD AES CRC32 PMULL ATOMICS SHA1 SHA2 PageSize:4096 Running on Cortex-A55 with 4 Cores
Will use Hardware counter measured at 24.0 MHz emulating 3.0 GHz
Params database has 90 entries
Box64 with Dynarec v0.3.1 1978ec8b built on Sep 19 2024 22:05:34
BOX64: Detected 48bits at least of address space
Counted 78 Env var
BOX64 LIB PATH: BOX64 BIN PATH: ./:bin/:/home/thwright/bin/:/usr/local/sbin/:/usr/local/bin/:/usr/bin/:/var/lib/flatpak/exports/bin/:/usr/lib/jvm/default/bin/:/usr/bin/site_perl/:/usr/bin/vendor_perl/:/usr/bin/core_perl/:/var/lib/snapd/snap/bin/:/home/thwright/.local/bin/:/home/thwright/bin/
Looking for /home/thwright/Downloads/LogosLinuxInstaller
Apply RC params for LogosLinuxInstaller
Applying BOX64_DYNAREC_BIGBLOCK=0
Applying BOX64_DYNAREC_SAFEFLAGS=2
Applying BOX64_DYNAREC_CALLRET=0
Rename process to "LogosLinuxInstaller"
Using native(wrapped) libdl.so.2
Using native(wrapped) libz.so.1
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Using emulated /tmp/_MEIFLb82B/libpython3.12.so.1.0
Using native(wrapped) libm.so.6
Using emulated /tmp/_MEIFLb82B/lib-dynload/_struct.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/zlib.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_ctypes.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/libffi.so.7
Using emulated /tmp/_MEIFLb82B/lib-dynload/_opcode.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/math.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/binascii.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_bisect.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_random.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_sha2.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/select.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/array.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_datetime.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_bz2.cpython-312-x86_64-linux-gnu.so
Using native(wrapped) libbz2.so.1
Using emulated /tmp/_MEIFLb82B/lib-dynload/_lzma.cpython-312-x86_64-linux-gnu.so
Using native(wrapped) liblzma.so.5
Using emulated /tmp/_MEIFLb82B/lib-dynload/pyexpat.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/fcntl.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_posixsubprocess.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_heapq.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_queue.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_hashlib.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/libcrypto.so.1.1
Using emulated /tmp/_MEIFLb82B/lib-dynload/_blake2.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_ssl.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/libssl.so.1.1
Using emulated /tmp/_MEIFLb82B/lib-dynload/grp.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_csv.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_json.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_pickle.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/lib-dynload/_tkinter.cpython-312-x86_64-linux-gnu.so
Using emulated /tmp/_MEIFLb82B/libtk8.6.so
Using emulated /tmp/_MEIFLb82B/libtcl8.6.so
Using native(wrapped) libXft.so.2
Using native(wrapped) libX11.so.6
Using native(wrapped) libxcb.so.1
Using native(wrapped) libXau.so.6
Using native(wrapped) libXdmcp.so.6
Using native(wrapped) libfontconfig.so.1
Using native(wrapped) libexpat.so.1
Using native(wrapped) libfreetype.so.6
Using native(wrapped) libXrender.so.1
Using native(wrapped) libXss.so.1
Using native(wrapped) libXext.so.6
Error: Symbol _XInitImageFuncPtrs not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167178 (0x312f0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftDrawGlyphFontSpec not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167320 (0x31640) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftListFonts not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167370 (0x316e0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftCharIndex not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff201673b8 (0x31770) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftGlyphExtents not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167440 (0x31880) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftDefaultSubstitute not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167560 (0x31ac0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftXlfdParse not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff201675d0 (0x31ba0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: relocating Plt symbols in elf libtk8.6.so
Error initializing needed lib libc.so.6
Error loading one of needed lib
Error initializing needed lib /tmp/_MEIFLb82B/lib-dynload/_tkinter.cpython-312-x86_64-linux-gnu.so
Traceback (most recent call last):
  File "main.py", line 4, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 378, in exec_module
  File "control.py", line 19, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 378, in exec_module
  File "msg.py", line 13, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 378, in exec_module
  File "gui.py", line 1, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 378, in exec_module
  File "tkinter/__init__.py", line 38, in <module>
ImportError: Cannot dlopen("/tmp/_MEIFLb82B/lib-dynload/_tkinter.cpython-312-x86_64-linux-gnu.so"/0x60b19be0, 2)

[PYI-4945:ERROR] Failed to execute script 'main' due to unhandled exception!

Is there any additional information I can supply? Is there something simple I have overlooked?

@ptitSeb
Copy link
Owner

ptitSeb commented Sep 20, 2024

A few symbols are missing:

Error: Symbol _XInitImageFuncPtrs not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167178 (0x312f0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftDrawGlyphFontSpec not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167320 (0x31640) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftListFonts not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167370 (0x316e0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftCharIndex not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff201673b8 (0x31770) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftGlyphExtents not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167440 (0x31880) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftDefaultSubstitute not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff20167560 (0x31ac0) in /tmp/_MEIFLb82B/libtk8.6.so
Error: Symbol XftXlfdParse not found, cannot apply R_X86_64_JUMP_SLOT @0x7fff201675d0 (0x31ba0) in /tmp/_MEIFLb82B/libtk8.6.so

I'll add them.

@ptitSeb
Copy link
Owner

ptitSeb commented Sep 20, 2024

Ok, all functions have been defined

@LukeShortCloud
Copy link
Collaborator

@thw26 PyInstaller applications should be supported now. Feel free to re-open this if you encounter any further issues. Closing as resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants