[Gmsh] Gmsh cannot find LAPACK although it is installed

Aleksey Rukhlenko aleksey_r at list.ru
Fri Aug 10 16:37:31 CEST 2012


I figured out. I've changed CMakeLists.txt to:

...
      # on Linux also try to find ATLAS without a Fortran compiler,
      # because cmake ships with a buggy FindBLAS e.g. on Ubuntu Lucid
      # Lynx
      #set(ATLAS_LIBS_REQUIRED lapack f77blas cblas atlas)
      set(ATLAS_LIBS_REQUIRED lapack cblas)
      set(EXTRA_PATH /usr/lib64)
      find_all_libraries(LAPACK_LIBRARIES_1 ATLAS_LIBS_REQUIRED 
${EXTRA_PATH} "")
      set(ATLAS_LIBS_REQUIRED f77blas atlas)
      set(EXTRA_PATH /usr/lib64/atlas)
      find_all_libraries(LAPACK_LIBRARIES_2 ATLAS_LIBS_REQUIRED 
${EXTRA_PATH} "")
      set(LAPACK_LIBRARIES)
      list(APPEND LAPACK_LIBRARIES ${LAPACK_LIBRARIES_1})
      list(APPEND LAPACK_LIBRARIES ${LAPACK_LIBRARIES_2})
      message("LAPACK_LIBRARIES = " ${LAPACK_LIBRARIES})
      if(LAPACK_LIBRARIES)
        set_config_option(HAVE_BLAS "Blas(ATLAS)")
        set_config_option(HAVE_LAPACK "Lapack(ATLAS)")
      endif(LAPACK_LIBRARIES)
    endif(LAPACK_LIBRARIES)
...

Now works.

By the way, I had to compile without MPI. When I compiled with MPI I got an 
error while trying to import gmshpy in python. I don't know whether it is 
specific to OpenSUSE. However, MPI in Gmsh for me is not necessary.

Best regards,
Aleksey.

Aleksey Rukhlenko wrote:

> Greetings, dear colleagues.
> 
> I try to compile gmsh-2.6.1 from sources on OpenSUSE 12.1 64 bit and I
> have following problem. During running cmake I get:
> 
> -- A library with BLAS API found.
> -- A library with LAPACK API not found. Please specify library location.
> WARNING: Could not find Blas or Lapack: most meshing algorithms will not
> be functional
> 
> I've installed everything regarding BLAS, LAPACK and ATLAS (except sse
> extensions) from:
> http://download.opensuse.org/repositories/science/openSUSE_12.1/
> 
> In /usr/include I have:
> ./clapack.h
> ./lapacke_mangling.h
> ./lapacke_config.h
> ./lapacke.h
> ./lapacke_utils.h
> ./openblas/lapacke_mangling.h
> ./openblas/lapacke_config.h
> ./openblas/lapacke.h
> ./openblas/lapacke_utils.h
> ./lapacke_mangling_with_flags.h
> and ./atlas folder with ATLAS stuff.
> 
> Please, help. What do I have to do to make gmsh see LAPACK?
> 
> Best regards,
> Aleksey.