Linking on Windows - Linking on Windows - 5.3 English - 68552

AOCL API Guide (68552)

Document_ID
68552
Release_Date
2026-05-13
Version
5.3 English

In the example compilation command below, INT_LIB is either LP64 or ILP64 for 32 and 64 bit integers respectively.

cl <example_name>.cpp /I \<path to aocl-da headers>\include\<INT_LIB> /EHsc /MD
   \<path to aocl-da>\lib\<INT_LIB>\aocl-da.lib
   \<path to amd-sparse>\lib\<INT_LIB>\shared\aoclsparse.lib
   \<path to amd-libflame>\lib\<INT_LIB>\AOCL-LibFlame-Win-MT-dll.lib
   \<path to amd-blis>\lib\<INT_LIB>\AOCL-LibBlis-Win-MT-dll.lib
   \<path to amd-utils>\lib\libaoclutils.lib /openmp:llvm

The same command will work with cl replaced by clang-cl (in which case, simply use /openmp) and linking statically using /MT.

If you are using serial libraries, then the OpenMP flag is not required and -MT should be omitted from the BLIS and libFLAME library names.

Note

You should ensure the folders containing the libraries to be linked are on your Windows PATH environment variable e.g. using set PATH=%PATH%;C:\<path_to_BLAS_and_LAPACK>. Depending on how your system is set up, and which functions you are using, you may also need to link to some Fortran runtime libraries such as libfifcore-mt.lib. The easiest way to do this is to source the ifort compiler using e.g. C:\Program Files (x86)\Intel\oneAPI\setvars.bat.