gpsd-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gpsd-dev] Python Shebang Lines


From: Gary E. Miller
Subject: Re: [gpsd-dev] Python Shebang Lines
Date: Tue, 27 Dec 2016 17:51:27 -0800

Yo Fred!

On Tue, 27 Dec 2016 17:05:25 -0800 (PST)
Fred Wright <address@hidden> wrote:

> On Tue, 27 Dec 2016, Gary E. Miller wrote:
> > On Tue, 27 Dec 2016 15:02:07 -0800 (PST)
> > Fred Wright <address@hidden> wrote:  
> [...]
> > > I think I explained in quite a bit of detail why multi-version
> > > compatibility is not the same thing as not caring which version is
> > > *currently* in use.  
> >
> > Yes, and I did not bother tpo answert point by point since IMHO you
> > overcomplicated it.  As I said, ntpsec has zero issues with
> > mulit-versions of python, no matter how you want to permute the
> > issue.  
> 
> If by "overcomplicating" you mean explaining the problem in detail,
> then I plead guilty. :-)

We'll just have to disagree on that one.

> > including OS X.  So the corner cases are hidden deep.  
> 
> Try the following, on any system with more than one Python available:
> 
> 1) Build and install ntpsec.
> 
> 2) Change the default Python.  This typically means just changing the
> /some/bin/dir/python symlink, perhaps with a tool or perhaps manually.
> 
> 3) Try some ntpsec Python-based tool that needs pylib.

If I do that with any gentoo python package it works just fine.  Gentoo
just does the right thing.

It is up to the distro to make sure the right pylibs need to be installed.

As for manual installs, that happens with just about any binary package.
It is perfectly normal to reinstall dependencies when a core binary
is updated.


> > Better yet, make it so nothing needs to be patched, ever.  
> 
> Sure.  All you have to do is to make sure that the Python libraries
> are built and installed in every version of Python that *might* be
> selected as the default Python (and if you want to be *really*
> thorough, every version of Python that might be installed and
> selected in the future :-)).  Now *that's* overcomplicated.

No, it is automagic.  Gentoo does the right thing.  Pertty much
every other distro also tracks dependencies.

> There are two important differences between Python and C in this
> context:
> 
> 1) With C, libaries normally have the same install location
> regardless of which compiler was used to build them.

Ah, no.

> With Python,
> libraries have a different install location for each Python install.
> One might argue that that's a bad design, but that's the way it is.

Just like gcc does.  I have no problem with that.

> 2) With C, the compiler version is only relevant at build time.

Ah, no.

>  With
> Python, the interpreter version is selected at runtime, and *not* by
> the program if it uses the generic shebang line.

Yes.

> > I have not found that scons needs any change to run on Python 3.  
> 
> It doesn't (yet) "run on" Python 3 at all.

Well, then.  That totally ends this discussion.  Go forth, learn, find
a real problem, then come back and we'll solve it.

RGDS                                              Veritas liberabit vos 
GARY                                                   Quid est veritas?
---------------------------------------------------------------------------
Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
address@hidden  Tel:+1 541 382 8588

Attachment: pgptzfk2u8Vxv.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]