Hello!

I'm trying to have very portable python tools using pyinstaller together
with full dependency closure and custom built GlibC. I'm executing
pyinstaller binary via direct call of ld-linux loader:

```
PREFIX/dist/bundle_name/_internal/ld-linux-x86-64.so.2 --library-path
PREFIX/dist/bundle_name/_internal PREFIX/dist/bundle_name/app.py
```

The problem I see is that the second call of execvp is not using the
ld-linux path I used in invocation and relies on the ELF interpreter
specified in the ELF header instead (I found it when I intentionally set
this to a non-existing file).

https://github.com/pyinstaller/pyinstaller/blob/4f15892b9b20a73c2f7c170f61a7db2f07f0b5b8/bootloader/src/pyi_main.c#L1269

```
[50458] PyInstaller Bootloader 6.x
[50458] LOADER: resolved executable file
PREFIX/dist/bundle_name/_internal/ld-linux-x86-64.so.2 is ld.so dynamic
loader - ignoring it!
[50458] LOADER: resolving program path from argv[0]:
PREFIX/dist/bundle_name/app.py
[50458] LOADER: executable file: PREFIX/dist/bundle_name/app.py
[50458] LOADER: trying to load executable-embedded archive...
[50458] LOADER: attempting to open archive PREFIX/dist/bundle_name/app.py
[50458] LOADER: cookie found at offset 0x2BD596
[50458] LOADER: archive file: PREFIX/dist/bundle_name/app.py
[50458] LOADER: application has onedir semantics...
[50458] LOADER: POSIX onedir process needs to set library seach path and
restart itself.
[50458] LOADER: setting LD_LIBRARY_PATH=PREFIX/dist/bundle_name/_internal
[50458] LOADER: failed to restart process via execvp: No such file or
directory
```
(I redacted PREFIX and app name, I hope you don't mind much)

Since the bootloader code on other places seems to be ready for this direct
execution, I wonder if it's not working because of onedir mode or if I
invoked it wrongly. Maybe it's just a bug on a path which hasn't been tried
before and I should file new issue.

Thanks in advance for your advice,

Tomáš Čech

-- 
You received this message because you are subscribed to the Google Groups 
"PyInstaller" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pyinstaller/CACauh%3D2uw0gcJ0AMwLe-GGkrcxnTK-oVQcnY-r6-7djp0F9K5A%40mail.gmail.com.

Reply via email to