Dear Dr. Cantwell,
I do your suggestions and add -fPIC to the variables and compiled
Nektar with BLAS and LAPACK again. As a result, I did not get the
previous error. But I've another error now which is:
[ 55%] Built target SolverUtils
Linking CXX executable UnitTests
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_stop_numeric'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_transfer_character'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_compare_string'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_st_write_done'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_concat_string'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_string_len_trim'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_transfer_integer'
../LibUtilities/libLibUtilities.so.4.0.0: undefined
reference to `_gfortran_st_write'
collect2: ld returned 1 exit status
make[2]: *** [library/UnitTests/UnitTests-4.0.0]
Error 1
make[1]: ***
[library/UnitTests/CMakeFiles/UnitTests.dir/all] Error 2
make: *** [all] Error 2
Is there another thing that I need to change in make.inc file of
BLAS and LAPACK to overcome this problem?
Regards,
Kamil
30.11.2014 13:08 tarihinde, Chris
Cantwell yazdı:
Dear
Kamil,
This still seems to suggest that the version in your home
directory is not compiled with -fPIC.
Try deleting all library files (*.a) and all compiled object code
(*.o) from within the LAPACK source tree and try compiling from
fresh again. Also note that you need to add the -fPIC flag to both
the OPTS and NOOPT variables in your LAPACK make.inc file (which
presumably is what your system administrator altered).
Cheers,
Chris
On 29/11/14 22:29, Kamil ÖZDEN wrote:
Dear Dr. Cantwell,
Here is the error message I got :
/*[ 19%] Building CXX object
library/LibUtilities/CMakeFiles/LibUtilities.dir/GitRevision.cpp.o*//*
*//*Linking CXX shared library libLibUtilities.so*//*
*//*/usr/bin/ld:
/truba/home/kozden/lib/lapack/netlib-3.5.0-gcc/liblapack.a(dlamch.o):
relocation R_X86_64_32 against `.rodata' can not be used when
making a
shared object; recompile with -fPIC*//*
*//*/truba/home/kozden/lib/lapack/netlib-3.5.0-gcc/liblapack.a:
could
not read symbols: Bad value*//*
*//*collect2: ld returned 1 exit status*//*
*//*make[2]: *** [library/LibUtilities/libLibUtilities.so.4.0.0]
Error 1*//*
*//*make[1]: ***
[library/LibUtilities/CMakeFiles/LibUtilities.dir/all]
Error 2*//*
*//*make: *** [all] Error 2*/
Regards,
Kamil
30.11.2014 00:08 tarihinde, Chris Cantwell yazdı:
Dear Kamil,
Could you send the current error message you get when you
specify the
version of the library compiled with -fPIC?
Cheers,
Chris
On 29/11/14 21:55, Kamil ÖZDEN wrote:
Dear Dr. Cantwell,
Yes, it is the same version of the library compiled with
-fPIC version.
Regards,
Kamil
29.11.2014 23:48 tarihinde, Chris Cantwell yazdı:
Dear Kamil,
Can you confirm the library mentioned in the original
error message
(/truba/sw/centos6.4/lib/lapack/netlib-3.5.0-gcc/liblapack.a)
is now
the version of the library in your home directory in the
latest error
message?
Cheers,
Chris
On 27/11/14 13:57, Kamil Ozden wrote:
Dear Dr. Moxey,
I got in contact with the system administrator. He told
that it is
impossible to recompile blas and lapack on the system
with -fPIC
option.
Alternatively, he copied the Blas and Lapack libraries
from the
directory in the system to another folder in my home
directory and
recompiled them there with -fPIC option.
However, when I tried to reinstall Nektar by showing the
path of new
Blas and Lapack libraries in my home directory I got the
same
error. Is
there any other alternative way to overcome this
problem?
Regards,
Kamil
On 27-11-2014 13:10, David Moxey wrote:
Hi Kamil,
The issue is related to linking. We generate shared
libraries in
Nektar++, but here we are trying to link the shared
library with a
static library. You can only do this if the static
library was
compiled with the -fPIC option, which generates
position-independent
code that shared libraries need in order to work at
runtime.
If you have a shared library, you should use this.
Otherwise, you
should recompile BLAS/Lapack installation with the
-fPIC option. This
may be something that your cluster system
administrators can help
with.
Thanks,
Dave
On 27 Nov 2014, at 10:37,
Kamil ÖZDEN <kamil.ozden.me@gmail.com>
wrote:
Dear All,
I'm trying to install Nektar++ 4.0 to a cluster with
the options
NEKTAR_USE_BLAS_LAPACK ON
NEKTAR_USE_SYSTEM_BLAS_LAPACK ON
with the path of the libraries as follows:
NATIVE_BLAS
/truba/sw/centos6.4/lib/blas/netlib-gcc/blas_LINUX.a
NATIVE_LAPACK
/truba/sw/centos6.4/lib/lapack/netlib-3.5.0-gcc/liblapack.a
However, I'm getting the following error:
Linking CXX shared library libLibUtilities.so
/usr/bin/ld:
/truba/sw/centos6.4/lib/lapack/netlib-3.5.0-gcc/liblapack.a(dgbtrf.o):
relocation
R_X86_64_32 against `.rodata' can not be used when
making a shared
object; recompile with -fPIC
/truba/sw/centos6.4/lib/lapack/netlib-3.5.0-gcc/liblapack.a:
could
not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: ***
[library/LibUtilities/libLibUtilities.so.4.0.0]
Error 1
make[1]: ***
[library/LibUtilities/CMakeFiles/LibUtilities.dir/all]
Error 2
make: *** [all] Error 2
What may be the reason for this problem and how can
I solve it?
Regards,
Kamil
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
--
David Moxey (Research Associate)
d.moxey@imperial.ac.uk |
www.imperial.ac.uk/people/d.moxey
Room 363, Department of Aeronautics,
Imperial College London,
London, SW7 2AZ, UK.
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users