- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I just started using the MKL for MAc OS X. I cannot link and I get an Undefined Symbols error when I try to call a LAPACK subroutine. I would very much appreciate some help.
I use the following software:
XCode v.3.1.1
Mac OS X v. 10.5.4
Intel Fortran Compiler v.10.1
In the main code I have the commands:
USE mkl95_PRECISION, ONLY: WP => SP
USE mkl95_LAPACK, ONLY: gttrf,gttrs
and
call cgttrf(ifou_r, dl, dd, du, du2, ipiv, info1)
call cgttrs(N, ifou_r, 1, dl, dd, du, du2, ipiv, BB, ifou_r, info2)
The compilation command reads:
ifort -O4 /Library/Frameworks/Intel_MKL.framework/Versions/10.0.3.020/include/mkl_lapack.f90 -o HHP HH_P.f90 -L/Library/Frameworks/Intel_MKL.framework/Versions/10.0.3.020/lib/em64t -I/Library/Frameworks/Intel_MKL.framework/Versions/10.0.3.020/include -lmkl_lapack -lmkl_intel_thread -lmkl_core -lguide -lpthread
I always get the following error:
Undefined symbols:
"_cgttrf_", referenced from:
_MAIN__ in ifortMrPnMw.o
"_cgttrs_", referenced from:
_MAIN__ in ifortMrPnMw.o
ld: symbol(s) not found
Thank you,
Carles
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try adding -lmkl_intel_lp64 before "-lmkl_lapack" in your build command above.libmkl_intel_lp64.dylib is the interface library which is always necessary in addition to the threading layer ("-lmkl_intel_thread" above) and computation layer ("-lmkl_core" above). Chapter 5 in the User Guide in your doc directory goes into some detail about this.
-Todd
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page