Re: [easybuild] Install problems on Ubuntu 22.04

2023-08-23 Thread Kenneth Hoste

Hello,

You're hitting a known problem with installing Python packages with 
EasyBuild (like EasyBuild itself, which is also a (collection of) Python 
package(s)) when using the system Python that comes with Ubuntu 22.04, 
because they've tweaked the default behaviour of "pip install --prefix" 
to inject an extra /local/ subdirectory rather than directly installing 
in the specified prefix...


More details are available in 
https://github.com/easybuilders/easybuild-easyblocks/issues/2976 .


There is an open pull request that enhances the PythonPackage easyblock 
that should fix the problem you are seeing at 
https://github.com/easybuilders/easybuild-easyblocks/pull/2977, so 
please check if you can confirm that, and provide feedback in the issue 
or in the PR.


To test, try running:

eb --include-easyblocks-from-pr 2977 --install-latest-eb-release 
--prefix /tmp/easybuild



regards,

Kenneth

On 23/08/2023 17:44, Random Task wrote:
Please forgive me if this is a FAQ, but I searched for my answer in the 
docs, on github, and in this list's archive without finding any solution.


I'm trying to install easybuild Ubuntu 22.04. I've tried it on both a 
fully configured workstation as well as a minimal OS on a VM with the 
same results.


I'm following the instructions found at 


[easybuild] Install problems on Ubuntu 22.04

2023-08-23 Thread Random Task
Please forgive me if this is a FAQ, but I searched for my answer in the
docs, on github, and in this list's archive without finding any solution.

I'm trying to install easybuild Ubuntu 22.04. I've tried it on both a fully
configured workstation as well as a minimal OS on a VM with the same
results.

I'm following the instructions found at <
https://docs.easybuild.io/installation/> to install EB as a module. I have
installed lmod 8.6.19 via apt.

The step #2 ('eb --install-latest-eb-release --prefix /tmp/easybuild')
fails.

Debian/Ubuntu's python appears to differ from the norm by the use of both
"dist-packages" and "site-packages". I've tried to take this into
consideration and slightly modified Step1 thusly, but am still getting a
failure.

export EB_TMPDIR=/tmp/$USER/eb_tmp

python3 -m pip install --ignore-installed --prefix $EB_TMPDIR easybuild

export PATH=$EB_TMPDIR/local/bin:$PATH

export PYTHONPATH=$(/bin/ls -rtd -1
$EB_TMPDIR/local/lib*/python*/dist-packages | tail -1):$PYTHONPATH

export EB_PYTHON=python3


When I run eb --install-latest-eb-release --prefix /tmp/easybuild I see
this error


== FAILED: Installation ended unsuccessfully (build directory:
/tmp/easybuild/build/EasyBuild/4.8.0/system-system): build failed (first
300 chars): Failed to isolate installed egg dir for easybuild-framework
(took 20 secs)
== Results of the build can be found in the log file(s)
/tmp/eb-2ofwbvaq/easybuild-EasyBuild-4.8.0-20230823.110407.MJwGL.log
ERROR: Build of
/tmp/eb-2ofwbvaq/tmpme67cc1g/easybuilders/easybuild-easyconfigs-develop/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.8.0.eb
failed (err: 'build failed (first 300 chars): Failed to isolate installed
egg dir for easybuild-framework')


The first ERROR line in the referenced log is here.

== 2023-08-23 11:04:27,558 build_log.py:171 ERROR EasyBuild crashed with an
error (at easybuild/base/exceptions.py:126 in __init__): Failed to isolate
installed egg dir for easybuild-framework (at
easybuild/easyblocks/e/easybuildmeta.py:237 in sanity_check_step)


Thanks in advance for any help or pointers. I can provide more detailed
info if needed.


PS. On Ubuntu 22.04:

$ python3 -m site
sys.path = [
'/tmp',
'/tmp/randomtasks/eb_tmp/lib/python3.10/site-packages',
'/usr/lib/python310.zip',
'/usr/lib/python3.10',
'/usr/lib/python3.10/lib-dynload',
'/usr/local/lib/python3.10/dist-packages',
'/usr/lib/python3/dist-packages',
]
USER_BASE: '/home/randomtasks/.local' (exists)
USER_SITE: '/home/randomtasks/.local/lib/python3.10/site-packages' (doesn't
exist)
ENABLE_USER_SITE: True