[Scons-users] "pip install scons" result in a broken installation that is unusable

Bill Deegan bill at baddogconsulting.com
Fri Oct 12 09:47:14 EDT 2018


Do you have wheel installed?
I don't see this problem on a vanilla python 2.7.14 install with a pip
install (no virtualenv) into that tree..
Are you sure you're picking up scons from that path?
can you paste the output of 'which scons' ?


On Fri, Oct 12, 2018 at 1:39 AM Fux Samuel (ID SIS) <samuel.fux at id.ethz.ch>
wrote:

> Dear Bill,
>
> Thank you for your reply.
>
> For me it still fails:
>
> [sfux at lo-login-01 ~]$ pip install --index-url
> https://test.pypi.org/simple/ scons==3.1.0.alpha.20181011
> Looking in indexes: https://test.pypi.org/simple/
> Collecting scons==3.1.0.alpha.20181011
> Installing collected packages: scons
> Successfully installed scons-3.1.0a20181011
> [sfux at lo-login-01 ~]$ scons
> SCons import failed. Unable to find engine files in:
>   /cluster/apps/python/2.7.14/bin/../engine
>   /cluster/apps/python/2.7.14/bin/scons-local-3.1.0.alpha.20181011
>   /cluster/apps/python/2.7.14/bin/scons-local
>
> /cluster/apps/python/2.7.14/lib64/python2.7/site-packages/lib/scons-3.1.0.alpha.20181011
>   /cluster/apps/python/2.7.14/lib/scons-3.1.0.alpha.20181011
>   /cluster/apps/python/2.7.14/lib/scons-3.1.0.alpha.20181011
>
> /cluster/apps/python/2.7.14/lib64/python2.7/site-packages/lib/python2.7/site-packages/scons-3.1.0.alpha.20181011
>
> /cluster/apps/python/2.7.14/lib/python2.7/site-packages/scons-3.1.0.alpha.20181011
>
> /cluster/apps/python/2.7.14/lib/python2.7/site-packages/scons-3.1.0.alpha.20181011
>   /cluster/apps/python/2.7.14/lib64/scons-3.1.0.alpha.20181011
>   /cluster/apps/python/2.7.14/lib64/python2.7/site-packages/lib/scons
>   /cluster/apps/python/2.7.14/lib/scons
>   /cluster/apps/python/2.7.14/lib/scons
>
> /cluster/apps/python/2.7.14/lib64/python2.7/site-packages/lib/python2.7/site-packages/scons
>   /cluster/apps/python/2.7.14/lib/python2.7/site-packages/scons
>   /cluster/apps/python/2.7.14/lib/python2.7/site-packages/scons
>   /cluster/apps/python/2.7.14/lib64/scons
> Traceback (most recent call last):
>   File "/cluster/apps/python/2.7.14/bin/scons", line 192, in <module>
>     import SCons.Script
> ImportError: No module named SCons.Script
> [sfux at lo-login-01 ~]$
>
>
> Not using virtualenv is a personal preference, like not using Anaconda to
> install Python itself or like preferring pip over distutils. I don't like
> the additional step of activating the virtualenv because I would like to
> keep things as simple as possible for our cluster users.
>
> If virtualenv is a hard requirement for using SCons, then this should be
> added to the Readme.md file on github. Currently the Readme.md file states
> with regards to dependencies:
>
> Execution Requirements
>
> Running SCons requires Python version 2.7.* and Python 3.5 or higher.
> There should be no other dependencies or requirements to run SCons.
> Installation Requirements
>
> Nothing special.
>
>
> Best regards
>
> Sam
>
> --
> ETH Zurich, Dr. sc. ETH Samuel Fux
> High Performance Computing, Scientific IT Services
> WEC D 13, Weinbergstrasse 11, 8092 Zurich, Switzerland
> Phone +41 44 632 57 63, http://www.id.ethz.ch/
> samuel.fux at id.ethz.ch
> ------------------------------
> *Von:* Scons-users [scons-users-bounces at scons.org]" im Auftrag von "Bill
> Deegan [bill at baddogconsulting.com]
> *Gesendet:* Donnerstag, 11. Oktober 2018 19:45
> *An:* SCons users mailing list
> *Betreff:* Re: [Scons-users] "pip install scons" result in a broken
> installation that is unusable
>
> This issue is resolved by patch merged into master in may.
> https://github.com/SCons/scons/pull/3134
>
> You can try via package I just uploaded to testpypi
> pip install --index-url https://test.pypi.org/simple/
> scons==3.1.0.alpha.20181011
>
> Please let me know if this works for you.
> I tried in a freshly built python on my linux system.
> Seems to work for me.
>
> -Bill
>
>
>
> On Thu, Oct 11, 2018 at 1:37 PM Mats Wichmann <mats at wichmann.us> wrote:
>
>> On 10/11/2018 10:37 AM, Mats Wichmann wrote:
>> > On 10/11/2018 10:19 AM, Bill Deegan wrote:
>> >> It should work with recent pip.
>> >> Let me take a look today.
>> >> -Bill
>> >
>> > IMO, some of the paths are ready as they are and should not be joined
>> > with further bits. a little reorg is needed there.
>>
>> to be a little less cryptic, it seems that the very first place a path
>> could be added to prefs is here:
>>
>> # - running from egg check
>> try:
>>     import pkg_resources
>> except ImportError:
>>     pass
>> else:
>>     # when running from an egg add the egg's directory
>>     try:
>>         d = pkg_resources.get_distribution('scons')
>>     except pkg_resources.DistributionNotFound:
>>         pass
>>     else:
>>         prefs.append(d.location)
>>
>> This stanza succeeds on all kinds of installations, "running from egg"
>> does not seem precise; whatever get_distribution looks for is found both
>> in Linux distro packages and pip installed locations.  This gives you
>> back a path that does not want 'lib' or 'lib/pythonX.Y/site-packages'
>> appended. For example for a particular virtualenv that has pip-install'd
>> scons, that stanza yields:
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7
>>
>> Further down, after the appending that happens in the two list
>> comprehensions to all the paths in prefs, that expanded to these two:
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib/python2.7/site-packages
>>
>> which are throwaways, engine will never be found in those after they are
>> expanded to these four locations on the final round:
>>
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib/scons-3.0.1
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib/python2.7/site-packages/scons-3.0.1
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib/scons
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/lib/python2.7/site-packages/scons
>>
>> there is no site-packages/lib and definitely no
>> site-packages/lib/.../site-packages - really this is the problem Samuel
>> is seeing.
>>
>> What we really wanted to generate from that original first path was:
>>
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/scons-3.0.1
>> /home/mats/.virtualenvs/py27+scons/lib/python2.7/site-packages/scons
>>
>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20181012/c292748f/attachment.html>


More information about the Scons-users mailing list