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