[Scons-users] untar builder fails with error

Mats Wichmann mats at wichmann.us
Tue Nov 8 09:58:55 EST 2022


On 11/8/22 07:45, daggs wrote:
> you might have asked me, I don't remember, as for python virtualenv, I 
> don't know what is it, I need to read about it.
> Dagg
> *Sent:* Monday, November 07, 2022 at 11:01 PM
> *From:* "Bill Deegan" <bill at baddogconsulting.com>
> *To:* "SCons users mailing list" <scons-users at scons.org>
> *Subject:* Re: [Scons-users] untar builder fails with error
> creating a python virtualenv isn't possible for you?
> (I feel like I've asked you this before?)
> On Sat, Nov 5, 2022 at 3:29 AM daggs <daggs at gmx.com 
> <mailto:daggs at gmx.com>> wrote:

It's really a two-part story.

*If* you can get an alternative Python installed, then you can build an 
environment which runs scons using that Python - all that really means 
is there's some location on your system where packages needed to run 
some Python application are installed, isolated from your main system 
Python and its package installation location.

The former isn't necessarily all that simple.  I've tended to use a 
project called "pyenv", which automates setting it up - the Python will 
also go into an alternate location so it doesn't interfere at all with 
the system Python.

https://github.com/pyenv

There's a simple example of creating a virtualenv in the SCons cookbook, 
but this wouldn't be quite what you want, since it uses the *system* 
Python to seed the virtualenv, not an alternate one:

https://scons-cookbook.readthedocs.io/en/latest/#setting-up-a-python-virtualenv-for-scons

For this kind of purpose I've used a pyenv plugin, "pyenv-virtualenv". 
A sequence might look something like this:

pyenv install --list   # see what's available (it's a *long* list)
pyenv install 3.10.8
pyenv virtualenv 3.10.8 myworkenv  # create the venv
pyenv activate myworkenv
etc ...

This is all great unless you're on Windows - the pyenv facilities are 
built on the POSIX shell so they don't work on Windows, although now 
there's an alternate implementation that works with Powershell, which I 
have no experience with.

There's a bit to think about here, at this point, just know that such 
facilities exist.





More information about the Scons-users mailing list