Hi Andreas,
On 25/08/2017 11:23, Andreas Hilboll wrote:
PS: I should add that this is a Python3-based easyconfig, so there is no
`pip` executable in Python/3.6.1-intel2017a; it is called `pip3`. Maybe
the PythonPackage easyblock should somehow check if the correct pip is
called pip or pip3?
I think is your actual problem...
When you specify "use_pip = True", EasyBuild only tries to use 'pip', it
doesn't take into account that it may need to use 'pip3' when Python 3
is being used...
The logic for this is in the generic PythonPackage easyblock [1].
Are you up for taking a stab to fix that?
Basically you need to do something like this when Python 3 is being used:
self.install_cmd = self.install_cmd.replace('pip', 'pip3')
This should probably be done in the 'prepare_python' method, since only
there the Python module used as a dependency will be loaded.
regards,
Kenneth
[1]
https://github.com/easybuilders/easybuild-easyblocks/blob/master/easybuild/easyblocks/generic/pythonpackage.py#L226