Rogue Wave Component Builder (RCB): Building Your Applications : PART II Module-Specific Build Information : Chapter 6 Essential Math Module Build Information : Building Applications that Depend on the Essential Math Module
Building Applications that Depend on the Essential Math Module
Windows
On Windows, you have the choice of using the Netlib CLAPACK library or the MKL BLA library.
NetLib CLAPACK Library
If you built the Essential Math Module library using this library, the CLAPACK libraries must be specified on the link line when building your applications.
On 32-bit platforms for either static or dynamic builds, the libraries are located in <sourcepro-installdir>\3rdparty\clapack-<ver>\windows\ia32-<compiler>\lib.
On 64-bit platforms for either static or dynamic builds, the libraries are located in <sourcepro-installdir>\3rdparty\clapack-<ver>\windows\em64t-<compiler>\lib.
In either case, the libraries that must be linked are: lapack.lib, blas.lib, and f2c.lib (release builds) and lapackd.lib, blasd.lib, and f2cd.lib (debug builds).
MKL BLA Library
If you built the Essential Math Module library using this library, the MKL libraries must be specified on the link line when building your applications.
Static or Dynamic Linking, 32-bit
Libraries are located in <sourcepro-installdir>\3rdparty\mkl\<ver>\winos\ia32\lib. The libraries you need are: mkl_intel_c_dll.lib mkl_sequential_dll.lib
Static or Dynamic Linking, 64-bit
Libraries are located in <sourcepro-installdir>\3rdparty\mkl\<ver>\winos\em64t\lib. The libraries you need are: mkl_intel_lp64_dll.lib mkl_sequential_dll.lib
When running your applications, the MKL shared libraries must be accessible. There are two ways you can ensure accessibility:
Move the libraries to a known location, such as the Windows system directory.
Edit your PATH variable to include the location of the MKL libraries.
The DLLs are located at:
32-bit: <sourcepro-installdir>\3rdparty\mkl\<ver>\winos\ia32\bin
64-bit: <sourcepro-installdir>\3rdparty\mkl\<ver>\winos\em64t\bin
The DLL dispatcher loads the appropriate DLL for the processor dynamic kernel.
UNIX
Excluding Solaris and Linux, you must use the NetLib CLAPACK library on UNIX platforms.
When you build your applications, you must link in the NetLib CLAPACK libraries located at <sourcepro-installdir>/3rdparty/clapack-<ver>/<platform>/<architecture>/lib. The required libraries are lapack.a blas.a f2c.a.
Linux
You have the choice of using the NetLib CLAPACK library (see above for link requirements) or the MKL BLA library on a Linux platform.
If you built the Essential Math Module library using the MKL library, the MKL libraries must be specified on the link line when building your applications.
Static or Dynamic Linking, 32-bit
Libraries are located in <sourcepro-installdir>\3rdparty\mkl\<ver>\linux\lib\32. The libraries you need are: mkl_intel mkl_sequential mkl_core
Static or Dynamic Linking, 64-bit
Libraries are located in <sourcepro-installdir>\3rdparty\mkl\<ver>\linux\lib\em64t. The libraries you need are: mkl_intel_lp64 mkl_sequential mkl_core
At runtime, the shared library dispatcher loads the appropriate .so files for the processor dynamic kernel.
Solaris
You have the choice of using the NetLib CLAPACK library (see above for link requirements) or the Sun Performance Library (SPL) on a Solaris platform when using the SunPro compiler. It is not available for the gcc compiler.
When building applications that depend on the Essential Math Module built with SPL, you do not need to provide the names of the libraries, but you do need to add the following flag to the end of your compile and link lines:
-library=sunperf