LAPACKE_dtpqrt cannot be found

LAPACKE_dtpqrt cannot be found

I'm writing some of code using LAPACKE_dtpqrt function. 
In MKL, 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.

My code can be compiled by using netlib's LAPACKE. So, what's wrong?

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

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 :


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.


#include "mkl_lapacke.h"
int main(){

    double A[9] = {





    double B[9] = {





    double T[9] = {0};

    LAPACKE_dtpqrt(LAPACK_ROW_MAJOR, 3, 3, 0, 3, A, 3, B, 3, T, 3);

    return 0;


command line

icc -openmp test5.c -o test5 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lpthread -lm

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

gcc -o test test.c -llapacke -llapack

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.


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.


Leave a Comment

Please sign in to add a comment. Not a member? Join today