New Build System Status
Chris Johns
chrisj at rtems.org
Tue Nov 26 00:33:14 UTC 2019
On 26/11/19 10:46 am, Joel Sherrill wrote:
> On Mon, Nov 25, 2019 at 5:28 PM Chris Johns <chrisj at rtems.org
> <mailto:chrisj at rtems.org>> wrote:
> On 26/11/19 9:57 am, Joel Sherrill wrote:
> > On Mon, Nov 25, 2019 at 3:19 PM Chris Johns <chrisj at rtems.org
> <mailto:chrisj at rtems.org>
> > <mailto:chrisj at rtems.org <mailto:chrisj at rtems.org>>> wrote:
> >
> > On 26/11/19 8:05 am, Joel Sherrill wrote:
> > > On Mon, Nov 25, 2019 at 2:12 AM Sebastian Huber
> > > <sebastian.huber at embedded-brains.de
> <mailto:sebastian.huber at embedded-brains.de>
> > <mailto:sebastian.huber at embedded-brains.de
> <mailto:sebastian.huber at embedded-brains.de>>
> > <mailto:sebastian.huber at embedded-brains.de
> <mailto:sebastian.huber at embedded-brains.de>
> > <mailto:sebastian.huber at embedded-brains.de
> <mailto:sebastian.huber at embedded-brains.de>>>>
> > > wrote:
> > >
> > > On 25/11/2019 08:55, Chris Johns wrote:
> > > >
> > > > On 25/11/19 5:28 pm, Sebastian Huber wrote:
> > > >>
> > > >> On 24/11/2019 23:25, Chris Johns wrote:
> > > >>>>> Should there be a note or something about waf needing
> python and we
> > > recommend
> > > >>>>> python3? Plus waf needs a `python` installed and not just
> > `python2` or
> > > >>>>> `python3`?
> > > >>>> I think this belongs to the Host Computer section. The quick
> > start uses the
> > > >>>> RSB, so if you managed to build the tools, you must have a
> > working Python.
> > > >>>> The RSB uses Python and the RTEMS Tools use waf.
> > > >>> The RSB can use python2 or python3 without a python. What
> about a note
> > > to say
> > > >>> ... "Waf uses python and you need to make this command available
> > on your
> > > system".
> > > >> Now I am a bit confused. I thought every UNIX-like system
> provides a
> > > >>
> > > >> #!/usr/bin/env python
> > > >>
> > > >> which maps to Python 2 or 3?
> > > >>
> > > > Apparently on some distros the python executable is not
> automatically
> > > installed
> > > > with a suitable python2 or python3. I am not aware of the
> specifics of
> > > this but
> > > > it was raised as an issue that I fixed in the RSB:
> > > >
> > > > https://devel.rtems.org/ticket/3537
> > >
> > > I have never seen a system in which
> > >
> > > #!/usr/bin/env python2
> > >
> > > or
> > >
> > > #!/usr/bin/env python3
> > >
> > > works, but not
> > >
> > > #!/usr/bin/env python
> >
> > I agree however this is the post from Joel about a class he held ...
> >
> > https://lists.rtems.org/pipermail/devel/2018-October/023150.html
> >
> > and I posted the change here ...
> >
> > https://lists.rtems.org/pipermail/devel/2018-October/023296.html
> >
> > > How many Python scripts would stop to work in this case?
> However, the
> > > availability of a python command is not mandatory according to:
> > >
> > > https://www.python.org/dev/peps/pep-0394/
> >
> > I am aware of this and I support it however Linux distros seems to
> feel there
> > are cases for exceptions, we have this one and there is also pax.
> >
> > The pax and this python case are similar, do we say "We are correct,
> fix your
> > host or raise a bug on your distro" or do we attempt to smooth over
> the cracks
> > and attempt to just work?
> >
> > In the case of ubuntu, maybe someone with some experience with it can
> see what
> > is needed and update the documentation?
> >
> > > I think we should note in the "Host Computer" section that a
> "python"
> > > command is mandatory for RTEMS and remove the RSB extra stuff.
> >
> > The argument was presented to me that the RSB should just work even in
> this case
> > and so that is what I did. I am fine to remove that support, it is an
> > average hack.
> >
> > > Chris can answer to that.
> >
> > Done.
> >
> > > But on Centos 7, we have:
> > >
> > > $ type python
> > > python is /usr/bin/python
> > > $ python --version
> > > Python 2.7.5
> > > $ type python2
> > > python2 is /usr/bin/python2
> > > $ type python3
> > > bash: type: python3: not found
> > > $ env python
> > > Python 2.7.5 (default, Aug 7 2019, 00:51:29)
> > > [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux2
> > > Type "help", "copyright", "credits" or "license" for more information.
> > >>>>
> > >
> > > and if I activate the SCL for Python 3:
> > >
> > > $ scl enable rh-python36 bash
>
> >
> > >
>
> > > [joel at localhost rtems-work]$ type python
>
> >
> > >
>
> > > python is /opt/rh/rh-python36/root/usr/bin/python
>
> >
> > >
>
> > > [joel at localhost rtems-work]$ python --version
>
> >
> > >
>
> > > Python 3.6.3
> >
> > And on ubuntu? The original post was about that distro.
> >
> >
> > Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-66-generic x86_64)
>
> >
> > ....
> > $ type python
> > python is /usr/bin/python
> > $ python --version
> > Python 2.7.15+
> > $ env python
> > Python 2.7.15+ (default, Oct 7 2019, 17:39:04)
> > [GCC 7.4.0] on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> >>>>
> > $ python2
> > Python 2.7.15+ (default, Oct 7 2019, 17:39:04)
> > [GCC 7.4.0] on linux2
> > Type "help", "copyright", "credits" or "license" for more information.
> >>>>
> > $ python3
> > Python 3.6.8 (default, Oct 7 2019, 12:59:55)
> > [GCC 8.3.0] on linux
> > Type "help", "copyright", "credits" or "license" for more information.
> >>>>
>
> I am sorry but I am not sure how this helps the discussion? Your original post
> last year raised the issue of no python being installed on ubuntu and that lead
> to the change in the RSB.
>
> I wish I had included the Ubuntu version in the original post. msys2 and cygwin
> always seem to reflect the day you install them to me. The best I could do is
> report on the msys2 on my laptop and the Ubuntu we use for testing appear to be OK.
>
> I have no way to reproduce what happened in the class I sent an email about.
> I assure you that it happened though.
I am sure it did happen. I reported at the time the python symlink is part of
the python-minimal package. I have no idea how this sits in that distro's
packaging structure and how it can happen.
What does you version show for ...
apt-file search /usr/bin/python | grep "/usr/bin/python$"
... ?
> On the master, I suppose assuming "python" exists is OK as an experiment as long
> as it is assumed it may be Python2 or Python3. We should be prepared for someone
> to have the situation where it doesn't work out though and need to revisit this.
Are you saying it is OK to remove the support I added from the RSB and rtems-tools?
Chris
More information about the devel
mailing list