Path: csiph.com!news.swapon.de!newsfeed.fsmpi.rwth-aachen.de!newsfeed.straub-nv.de!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!nzpost1.xs4all.net!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'subject:Python': 0.05; 'binary': 0.05; 'irc': 0.05; 'tries': 0.05; 'versions,': 0.05; 'dynamically': 0.07; 'pypy': 0.07; 'x86': 0.07; 'cc:addr:python- list': 0.09; 'instance.': 0.09; 'portable': 0.09; 'received:openend.se': 0.09; 'received:theraft.openend.se': 0.09; 'subject:Why': 0.09; 'subject:both': 0.09; 'url:github': 0.09; 'url:rst': 0.09; 'subject:not': 0.11; 'things.': 0.15; 'binaries': 0.16; 'cc:addr:lac': 0.16; 'cc:addr:openend.se': 0.16; 'compiler,': 0.16; 'from:addr:lac': 0.16; 'from:addr:openend.se': 0.16; 'from:name:laura creighton': 0.16; 'message- id:@fido.openend.se': 0.16; 'received:fido': 0.16; 'received:fido.openend.se': 0.16; 'sad': 0.16; 'sources,': 0.16; 'laura': 0.18; 'hack': 0.18; 'versions': 0.20; 'cc:addr:python.org': 0.20; 'cc:2**1': 0.22; 'meant': 0.22; 'arm': 0.22; 'libraries': 0.22; 'see:': 0.22; 'bit': 0.23; 'tried': 0.24; 'thus': 0.24; 'linux': 0.26; 'figure': 0.27; 'finally,': 0.27; 'idea': 0.28; 'went': 0.28; 'for,': 0.29; 'received:se': 0.29; 'usable': 0.29; 'cc:no real name:2**1': 0.29; 'somebody': 0.30; 'common': 0.33; 'list': 0.34; 'on,': 0.35; 'could': 0.35; 'downloads': 0.35; 'stable': 0.35; 'quite': 0.35; 'but': 0.36; 'should': 0.36; 'located': 0.36; 'needed': 0.36; 'created': 0.36; 'subject:?': 0.36; 'subject:: ': 0.37; 'charset:us-ascii': 0.37; 'version': 0.38; 'turned': 0.38; 'mailing': 0.38; 'shared': 0.38; 'end': 0.39; 'means': 0.39; 'why': 0.39; 'rather': 0.39; 'well.': 0.40; 'where': 0.40; 'some': 0.40; 'your': 0.60; 'header:Message- Id:1': 0.61; 'different': 0.63; 'our': 0.64; 'story': 0.65; 'due': 0.65; 'header:In-reply-to:1': 0.84; 'url:master': 0.84 To: Mahan Marwat cc: python-list@python.org, lac@openend.se From: Laura Creighton Subject: Re: Why Python is not both an interpreter and a compiler? In-reply-to: References: <3e541d13-bc86-456c-8590-4ffd1af9cfd0@googlegroups.com> <87twrftw4w.fsf@elektro.pacujo.net> Comments: In-reply-to Mahan Marwat message dated "Mon, 31 Aug 2015 10:48:51 -0700." MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <454.1441093870.1@fido> Date: Tue, 01 Sep 2015 09:51:10 +0200 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.3.9 (theraft.openend.se [82.96.5.2]); Tue, 01 Sep 2015 09:51:12 +0200 (CEST) X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.20+ Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 41 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1441093883 news.xs4all.nl 23757 [2001:888:2000:d::a6]:39327 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:95824 If I understand what you are saying, then I think what you are looking for is not a compiler, but docker. see: https://www.docker.com/ in particular https://www.docker.com/whatisdocker PyPy used this to produce portable PyPy binaries. See: https://github.com/squeaky-pl/portable-pypy/blob/master/README.rst Why did we need to make portable PyPy binaries? >From the PyPy downloads page: Linux binaries and common distributions Linux binaries are dynamically linked, as is usual, and thus might not be usable due to the sad story of linux binary compatibility. This means that Linux binaries are only usable on the distributions where they were created unless you're ready to hack your system by adding symlinks to the libraries it tries to open. We had to make versions for debian stable and unstable, and all the different versions of RHEL, and Centos, and Suse and .... every time we turned around somebody made a new linux distribution, with new and different versions of shared libraries, located in some new creative idea of where the best place was to put such things. And we had to make 32 bit and 64 bit versions, and versions for x86 and for ARM and the list went on, and on, and on. This made releases far harder than they needed to be, and, from the user end meant that people had to work rather hard just to figure out what version of pypy they should download from our site. Lots of people never could quite figure it out, though we tried to help them on the pypy mailing list and over irc ... So finally, we used docker to make a portable version of pypy, which you can use to biuld your own version of pypy from the nightly sources, for instance. I think that this is what you are looking for, as well. But go read up on docker and see if it suits. Laura