Porting Python Application to a new linux machine

Grant Edwards invalid at invalid.invalid
Fri Sep 4 09:16:15 EDT 2015


On 2015-09-04, Christian Gollwitzer <auriocus at gmx.de> wrote:
> Am 03.09.15 um 16:32 schrieb Heli Nix:
>
>> I have my python scripts that use several python libraries such as
>> h5py, pyside, numpy....
>>
>> In Windows I have an installer that will install python locally on
>> user machine and so my program gets access to this local python and
>> runs successfully.
>>
>> How can I do this in Linux ? ( I want to install python plus my
>> program on the user machine.) I do not want to use the user´s python
>> or to install python on the user´s machine on root.
>
> Another variant is the use of pyinstaller. It can generate a single 
> directory with a copy of Python and all needed libraries. You can copy 
> that to a different machine, and often it works - unless libc or some 
> very basic library is different. Beware that this pulls in half of your 
> system, so you'll end up with ~100 MB.

As an end-user of a number of largish Python applications on Linux, I
don't think any of them use anything like pyinstaller (and I would not
be very happy if they did -- I've likely got almost all of the
required libraries already installed, and I don't need another copy of
all that stuff on my machine that then has to be backed up).

The normal way to distribute even large Python apps with a lot of
required libraries is either as just the Python sources with a
'setup.py' file or as a package that tells the system what
dependancies and libraries are required.  If you don't want to ship
bare sources, the "right" way to distribute a Python app for Linux is
as an .rpm, .ebuild, or .deb.

-- 
Grant Edwards               grant.b.edwards        Yow! An Italian is COMBING
                                  at               his hair in suburban DES
                              gmail.com            MOINES!



More information about the Python-list mailing list