H
H W
Dear Everyone,
I was trying to use Lapack++ v2.2.0 on my Linux (slackware 10) , the command
is like this:
gcc -o test Mat.o
test.o -L/local/d0p1/hw/lapackpp-2.2.0/lib -L/local/d0p1/hw/LAPACK -llapackp
p -llapack_LINUX -lblas_LINUX -lm
but got the following error message:
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(ilaenv.o)(.text+0x4c): In function
`ilaenv_': undefined reference to `s_copy'
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(ilaenv.o)(.text+0xe2): In function
`ilaenv_': undefined reference to `s_copy'
....
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(dormbr.o)(.text+0xb5): In function
`dormbr_': undefined reference to `s_cat'
....
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(dormlq.o)(.text+0x569): In function
`dormlq_': undefined reference to `s_cat'
....
....
/local/d0p1/hw/lapackpp-2.2.0/lib/liblapackpp.so: undefined reference to
`d_sign'
collect2: ld returned 1 exit status
make: *** [test] Error 1.
Does anyone have any idea why this happened? The blas and lapack library
files are under directory /local/d0p1/hw/LAPACK, named libblas_LINUX.a and
liblapack_LINUX.a, respectively. Lapackpp 2.2.0 is installed under
/local/d0p1/hw/lapackpp-2.2.0, and so the lib files are under
/local/d0p1/hw/lapackpp-2.2.0/lib. The fortran compiler used for compiling
the packages was g77. The 'make check' reports 'all passed'.
The code actually only has a variable declaration in it (of cause other
lines, and had my own matrix class in it, but they were running correctly
before and didn't use any of the lapack stuff):
#include "gmd.h"
....
LaMatGenDouble myMatrix(3,4);
....
And the error messages were the same even without this declaration.
Any advice is appreciated. Thank you very much,
Hongfang
I was trying to use Lapack++ v2.2.0 on my Linux (slackware 10) , the command
is like this:
gcc -o test Mat.o
test.o -L/local/d0p1/hw/lapackpp-2.2.0/lib -L/local/d0p1/hw/LAPACK -llapackp
p -llapack_LINUX -lblas_LINUX -lm
but got the following error message:
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(ilaenv.o)(.text+0x4c): In function
`ilaenv_': undefined reference to `s_copy'
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(ilaenv.o)(.text+0xe2): In function
`ilaenv_': undefined reference to `s_copy'
....
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(dormbr.o)(.text+0xb5): In function
`dormbr_': undefined reference to `s_cat'
....
/local/d0p1/hw/LAPACK/liblapack_LINUX.a(dormlq.o)(.text+0x569): In function
`dormlq_': undefined reference to `s_cat'
....
....
/local/d0p1/hw/lapackpp-2.2.0/lib/liblapackpp.so: undefined reference to
`d_sign'
collect2: ld returned 1 exit status
make: *** [test] Error 1.
Does anyone have any idea why this happened? The blas and lapack library
files are under directory /local/d0p1/hw/LAPACK, named libblas_LINUX.a and
liblapack_LINUX.a, respectively. Lapackpp 2.2.0 is installed under
/local/d0p1/hw/lapackpp-2.2.0, and so the lib files are under
/local/d0p1/hw/lapackpp-2.2.0/lib. The fortran compiler used for compiling
the packages was g77. The 'make check' reports 'all passed'.
The code actually only has a variable declaration in it (of cause other
lines, and had my own matrix class in it, but they were running correctly
before and didn't use any of the lapack stuff):
#include "gmd.h"
....
LaMatGenDouble myMatrix(3,4);
....
And the error messages were the same even without this declaration.
Any advice is appreciated. Thank you very much,
Hongfang