- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hello.
I'm writing some of code using LAPACKE_dtpqrt function.
In MKL 11.0.1.117, however, Intel c compiler could not link this function and reported error message "undefined reference to `LAPACKE_dtpqrt'".
From release note and reference manual, I should be able to use this function.
http://software.intel.com/en-us/articles/new-functions-added-in-the-c-interface-to-the-lapack ;
http://software.intel.com/sites/products/documentation/doclib/mkl_sa/11/mklman/GUID-4E76B45F-A4E9-42...
My code can be compiled by using netlib's LAPACKE. So, what's wrong?
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hi tmineno,
I can see this routine in mkl_lapacke.h header file:
lapack_int LAPACKE_dtpqrt( int matrix_order, lapack_int m, lapack_int n, lapack_int l,
lapack_int nb, double* a, lapack_int lda, double* b, lapack_int ldb,
double* t, lapack_int ldt );
therefore, pls check if your test contains
include "mkl_lapacke.h"
or pls check how do you link the application - see mkl linker adviser from here :http://software.intel.com/sites/products/mkl/
--Gennady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Thank you your comment, Gennady.
I have tried include mkl_lapacke.h explicitly, but the problem would not be still solved.
Here, I show a little test code below.
test.c
[cpp]
#include "mkl_lapacke.h"
int main(){
double A[9] = {
1,2,3,
0,1,2,
0,0,1
};
double B[9] = {
1,2,3,
4,5,6,
7,8,9
};
double T[9] = {0};
LAPACKE_dtpqrt(LAPACK_ROW_MAJOR, 3, 3, 0, 3, A, 3, B, 3, T, 3);
return 0;
}
[/cpp]
command line
[bash]icc -openmp test5.c -o test5 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lpthread -lm[/bash]
error message
/tmp/iccNwvErC.o: In function `main':
test.c:(.text+0x126): undefined reference to `LAPACKE_dtpqrt'
However, gcc with netlib's LAPACK(E) succeeded in compilation
[bash]gcc -o test test.c -llapacke -llapack[/bash]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
yes, that's the problem - i don't see this function in mkl's binaries too. the problem is escalated. I will let you know when the problem would be resolved.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
Hello,
This issue has been fixed in MKL v.11.0 update 2 released yesterday.
You can download this update from intel registration center and check the problem on your side.
--Gennady

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