Hi all,

I was installing MACS3 using  PythonBundle.My understanding is that a
bundle is just a list of packages on some order so they all know about each
other.

MACS3 needs 3 packages to be installed: Cython, numpy, cykhash, in this
order, so I created something like:

[...]

exts_list = [
    ('Cython','0.29.24',{
    }),
    ('numpy', '1.21.3', {
        'sources': ['%(name)s-%(version)s.zip'],
        'patches': [
            'numpy-1.18.2-mkl.patch',
            'numpy-1.20.3_disable-broken-override-test.patch',
            'numpy-1.20.3_disable_fortran_callback_test.patch',
        ],
    }),
    ('cykhash', '2.0.0', {
    }),
    ('MACS3', '3.0.0a6', {
        'modulename' : 'MACS3'
    }),
]

[...]

The first 3 installed successfully but MACS3 failed to install because it
was not finding cykhash:

ERROR: Could not find a version that satisfies the requirement
cykhash>=1.0.2 (from macs3) (from versions: none)
ERROR: No matching distribution found for cykhash>=1.0.2


it was, mainly, because of the ignore-installed option from the pip
installation:

 pip install
--prefix=/home/bria/easybuildinstall/software/MACS3/3.0.0a6-foss-2021a
--ignore-installed  --no-index  --no-build-isolation  ."

So I had to pass the "pip_ignore_installed = False" option and then MACS3
was able to find cykhash...


I find this a bit weird as, as said a the beginning, my understanding of
the bundle is: "a list of python packages installed in a way that each
knows about the others (and that's why order matters)."

Am I wrong with my understanding on how the pythonbundle works?

(I have other questions, but I guess that all depeden on this one :-) )

TIA,
Arnau

Reply via email to