Basically you need:

(1) site.cfg or %HOME%\.numpy-site.cfg with the following content: (change the paths according to your installation)

libraries = openblas
library_dirs = D:/devel/packages/openblas/amd64/lib
include_dirs = D:/devel/packages/openblas/amd64/include

OpenBLAS was build with the help of msys2, the successor of msys.

(2) I created an import library for python##.dll in <python>\libs\

I copied python##.dll in a temporary folder and executed: (example for python-2.7)

> gendef python27.dll
> dlltool --dllname python27.dll --def python27.def --output-lib libpython27.dll.a
> copy libpython27.dll.a <python_root>\libs\libpython27.dll.a

(3) before starting the numpy build I copied libopenblas.dll to numpy\core\

Actually I rework the overall procedure to allow the installation of the toolchain as a wheel with some postprocessing to handle all this intermediate steps.



2015-02-09 22:22 GMT+01:00 Sturla Molden <>:
Two quick comments:
- You need MSYS or Cygwin to build OpenBLAS. MSYS has uname and perl. Carl
probably used MSYS.
- BLAS and LAPACK are Fortran libs, hence there are no header files. NumPy
and SciPy include their own cblas headers.


Olivier Grisel <> wrote:
> Hi Carl,
> Could you please provide some details on how you used your
> mingw-static toolchain to build OpenBLAS, numpy & scipy? I would like
> to replicate but apparently the default Makefile in the openblas
> projects expects unix commands such as `uname` and `perl` that are not
> part of your archive. Did you compile those utilities from source or
> did you use another distribution of mingw with additional tools such
> as MSYS?
> For numpy and scipy, besides applying your patches, did you configure
> anything in site.cfg? I understand that you put the libopenblas.dll in
> the numpy/core folder but where do you put the BLAS / LAPACK header
> files?
> I would like to help automating that build in some CI environment
> (with either Windows or Linux + wine) but I am affraid that I am not
> familiar enough with the windows build of numpy & scipy to get it
> working all by myself.

NumPy-Discussion mailing list