While trying to compile LAPACKE/C-Lapack as distributed with LAPACK 3.4.0 under SuSE linux 12.1 using g++-4.6 I encountered a number of problems.
First of all there is a considerable amount of missing definitions in the header files lapacke.h and lapacke_config.h, which prevent the code from compiling due to undefined functions.
Secondly a number of routines fail to compile, because they attempt to modify a constant qualified input matrix. These routines take the input matrix A, transpose it, call the original LAPACK routine and then transpose the output back. The first transpose does not cause any trouble, since it reads from the input and writes its output to a dynamically allocated temporary array. However, the back transformation attempts to read from the temporary array and write on the original input matrix, which is defined const. Since all routines in question calculate norms, they do not produce any matrix output. Thus I circumvented the problem by omitting the second transposition. The files in question are:
Finally there seems to be a substantial amount of missing entries, which do not lead to compile time errors, when comparing the pre-processor macros with the list of actually defined functions. E.g.
are not defined as LAPACKE functions in my copy of version 3.4.0.
I would propose to merge these corrections into the trunk version after review by the developers, if there are no objections. If you like, I can provide the patched files.
Please let me know your thoughts concerning the issue.