-
Notifications
You must be signed in to change notification settings - Fork 1
Description
(This is the same issue I mentioned to @syarra privately earlier this week.)
The module compiles with no issues and importing MC21, MC29, and MC60 modules in Python is fine. However importing the solvers MA27 and MA57 gives the following error:
from hsl.solvers import _pyma27
ImportError: /home/andrew/anaconda3/envs/nlpy-dev/lib/python2.7/site-packages/hsl-0.1.0.dev0-py2.7-linux-x86_64.egg/hsl/solvers/_pyma27.so: undefined symbol: cblas_idamax
The symbol in question is identified in cblas.h (both in this repo and different versions on my laptop, such as the one included with OpenBLAS) so I suspect a bad include or link of some kind.
Some diagnostics: I compiling the master branch on Ubuntu 16.04, using python 2.7 through the Anaconda distribution (via a virtual environment). If I test the built *.so modules with ld directly, I get
ld: warning: cannot find entry symbol _start; not setting start address
_pyma27.so: undefined reference to `cblas_idamax'
_pyma27.so: undefined reference to `cblas_dcopy'
_pyma27.so: undefined reference to `cblas_daxpy'
and
ld: warning: cannot find entry symbol _start; not setting start address
_pyma57.so: undefined reference to `dgemm_'
_pyma57.so: undefined reference to `dtpsv_'
_pyma57.so: undefined reference to `cblas_dcopy'
_pyma57.so: undefined reference to `idamax_'
_pyma57.so: undefined reference to `dgemv_'
for _pyma27.so and _pyma57.so respectively. Again, everything seems to point to cblas.h not being correctly handled.