- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am linking to MKL cluster FFT from abinit. I tried the following,
with_fc_ldflags="-I/opt/intel/mkl/10.0.2.018/include -L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_cdft -lmkl_cdft_core -lmkl_core -lmkl_blacs_intelmpi_ilp64 -lmkl_intel_ilp64 -lmkl_em64t -lmkl_intel_thread -lguide -lpthread"
but I got errors " undefined reference to `DftiGetValueDM_fortran"
Any suggestions how to fix it?
Thanks a lot!
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
-L ${MKLROOT}/em64t -Wl,--start-group ${MKLROOT}/em64t/libmkl_cdft_core.a ${MKLROOT}/em64t/libmkl_intel_lp64.a ${MKLROOT}/em64t/libmkl_intel_thread.a ${MKLROOT}/em64t/libmkl_core.a -Wl,--end-group ${MKLROOT}/em64t/libguide.a ${MKLROOT}/em64t/libmkl_blacs_intelmpi20_ilp64.a -lpthread
--Gennady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
-L ${MKLROOT}/em64t -Wl,--start-group ${MKLROOT}/em64t/libmkl_cdft_core.a ${MKLROOT}/em64t/libmkl_intel_lp64.a ${MKLROOT}/em64t/libmkl_intel_thread.a ${MKLROOT}/em64t/libmkl_core.a -Wl,--end-group ${MKLROOT}/em64t/libguide.a ${MKLROOT}/em64t/libmkl_blacs_intelmpi20_ilp64.a -lpthread
--Gennady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
-L ${MKLROOT}/em64t -Wl,--start-group ${MKLROOT}/em64t/libmkl_cdft_core.a ${MKLROOT}/em64t/libmkl_intel_lp64.a ${MKLROOT}/em64t/libmkl_intel_thread.a ${MKLROOT}/em64t/libmkl_core.a -Wl,--end-group ${MKLROOT}/em64t/libguide.a ${MKLROOT}/em64t/libmkl_blacs_intelmpi20_ilp64.a -lpthread
--Gennady
The problem is caused by the Cluster FFT interface symbols being defined only in the static interface libraries (e.g. libmkl_intel_ilp64.a) and the default is to link with dynamic libraries. You can explicitly specify the name of the static library like this:
-I/opt/intel/mkl/10.0.2.018/include -L/opt/intel/mkl/10.0.2.018/lib/em64t -lmkl_cdft_core -lmkl_core -lmkl_blacs_intelmpi_ilp64 -l/opt/intel/mkl/10.0.2.018/lib/em64t/libmkl_intel_ilp64.a -lmkl_intel_thread -lguide -lpthread
However this is not the recomended way. Gennady's suggestion should actually help. Could you provide more details on the errors you get?
Best regards,
-Vladimir

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