Thank you Tony for the information. I still had some problem. I tried building Julia (release-0.5) using MinGW following the instructions here: https://github.com/JuliaLang/julia/blob/master/README.windows.md
The only difference is, after creating the Make.user file, I edited it using a text editor and added the options to use MKL, so the complete Make.user now looks like: override CMAKE=/C/CMake/bin/cmake.exe USE_INTEL_MKL = 1 USE_INTEL_MKL_FFT = 1 USE_INTEL_LIBM = 1 The addition of the above lines is per build instructions about MKL at https://github.com/JuliaLang/julia, except that I removed "USEICC = 1" and "USEIFC = 1" since I am not using Intel compiler. But I do have Intel MKL with the free Community License installed on my computer at "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\mkl" After I started the build with "make -j 3", the build would run for a while then stop with make: *** [Makefile:81: julia-deps] Error 2 I went through the messages and found this to be the most suspicious for a root cause: c:/users/zpan/documents/github/julia/usr/x86_64-w64-mingw32/sys-root/mingw/bin/../lib/gcc/x86_64-w64-mingw32/6.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lmkl_rt So I realized that MinGW was not able to find the MKL libraries. I tried the following 2: (1) Copied all the 17 .lib files from "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.0.109\windows\mkl\lib\intel64_win" to "C:\mkllib" (so the path does not contain a space), then I did $ export MKLLIB=/C/mkllib (2) Copied all the 17 .lib files to "C:\Users\zpan\Documents\GitHub\julia\usr\lib" But I was still getting the same Error 2 in the end, and I could still find the error message saying "cannot find -lmkl_rt". Well, mkl_rt.lib was indeed part of the 17 files, which are: mkl_blas95_ilp64.lib mkl_blas95_lp64.lib mkl_core.lib mkl_core_dll.lib mkl_intel_ilp64.lib mkl_intel_ilp64_dll.li mkl_intel_lp64.lib mkl_intel_lp64_dll.lib mkl_intel_thread.lib mkl_intel_thread_dll.l mkl_lapack95_ilp64.lib mkl_lapack95_lp64.lib mkl_rt.lib mkl_sequential.lib mkl_sequential_dll.lib mkl_tbb_thread.lib mkl_tbb_thread_dll.lib I am currently trying the command "make install" to build it without parallel option - this is very slow but I can see the messages in proper order. Did I miss something to let the linker see the .lib files? Any help greatly appreciated! On Monday, September 12, 2016 at 3:59:19 PM UTC-5, Tony Kelman wrote: > > Intel compilers on windows are MSVC style, which our build system is not > really set up to handle. There is experimental partial support (search for > "MSVC support tracking issue" if you're interested) but it would really > require rewriting the build system to use cmake to work smoothly. > > You can build Julia from source with mingw but direct the build system to > use an mkl library instead of building openblas from source. At one point > mkl on windows didn't export gfortran style naming conventions for blas and > lapack functions, but recent versions do last I checked. Could even be able > to switch from an existing Julia binary by rebuilding the system image. >