[Python-Dev] Single-file Python executables (was: Computed Goto dispatch for Python 2) (original) (raw)

Steven D'Aprano steve at pearwood.info
Fri May 29 09:15:50 CEST 2015


On Thu, May 28, 2015 at 05:38:49PM +0100, Paul Moore wrote:

I suspect "single file executables" just aren't viewed as a desirable solution on Unix.

More of an anti-pattern than a pattern. A single file executable means that when you have a security update, instead of patching one library, you have to patch all fifty applications that include that library.

Although Donald referred to a 4K binary, which probably means just a stub exe that depends on system-installed .so files, likely including Python (I'm just guessing here).

The machine I'm currently on has a 5.6K Python executable:

[steve at ando ~]$ ls -lh /usr/bin/python* -rwxr-xr-x 2 root root 5.6K Jan 9 2013 /usr/bin/python lrwxrwxrwx 1 root root 6 Jan 22 2013 /usr/bin/python2 -> python -rwxr-xr-x 2 root root 5.6K Jan 9 2013 /usr/bin/python2.4

but that doesn't include libpython:

[steve at ando ~]$ ls -lh /usr/lib/libpython2.4.so* lrwxrwxrwx 1 root root 19 Jan 22 2013 /usr/lib/libpython2.4.so -> libpython2.4.so.1.0 -r-xr-xr-x 1 root root 1.1M Jan 9 2013 /usr/lib/libpython2.4.so.1.0

or the standard library.

-- Steve



More information about the Python-Dev mailing list