Skip to content

Cannot import on python3: missing c_distances_openmp #1157

@jbarnoud

Description

@jbarnoud

This issue got mentioned first in #929.

Expected behaviour

MDAnalysis get imported on python 3.

Actual behaviour

>>> import MDAnalysis
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/jon/Envs/mda3/lib/python3.4/site-packages/MDAnalysis/__init__.py", line 178, in <module>
    from .lib import log
  File "/home/jon/Envs/mda3/lib/python3.4/site-packages/MDAnalysis/lib/__init__.py", line 36, in <module>
    from . import distances  # distances relies on mdamath
  File "/home/jon/Envs/mda3/lib/python3.4/site-packages/MDAnalysis/lib/distances.py", line 121, in <module>
    from c_distances_openmp import OPENMP_ENABLED as USED_OPENMP
ImportError: No module named 'c_distances_openmp'

This seems to come from the name given to the so files:

# Python 2.7
$ ls /home/jon/Envs/mda2/lib/python2.7/site-packages/MDAnalysis/lib
c_distances_openmp.so  formats       log.pyc            NeighborSearch.pyc   _transformations.so
c_distances.so         __init__.py   mdamath.py         qcprot.so            util.py
distances.py           __init__.pyc  mdamath.pyc        transformations.py   util.pyc
distances.pyc          log.py        NeighborSearch.py  transformations.pyc

# Python 3.4
$ ls /home/jon/Envs/mda3/lib/python3.4/site-packages/MDAnalysis/lib
c_distances.cpython-34m.so         formats      mdamath.py         qcprot.cpython-34m.so            util.py
c_distances_openmp.cpython-34m.so  __init__.py  NeighborSearch.py  _transformations.cpython-34m.so
distances.py                       log.py       __pycache__        transformations.py

Deleting the from c_distances_openmp import OPENMP_ENABLED as USED_OPENMP seems to fix the error (at least at import time). Yet, I expect the USED_OPENMP variable to be used somewhere.

Code to reproduce the behaviour

On python 3:

import MDAnalysis

Currently version of MDAnalysis:

dev

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions