[CMake] Forcing CMake to find static library
Michael Ellery
mellery451 at gmail.com
Fri Jun 9 14:07:14 EDT 2017
if you know exactly where the library is (via the ENV), then I guess you want to specify the NO_DEFAULT_PATH option to find_library. Alternatively, see if you can use the standard find module included with cmake:
https://github.com/Kitware/CMake/blob/master/Modules/FindLAPACK.cmake
..and in that case you could set LAPACK_ROOT using your ENV value.
HTH,
Mike
> On Jun 9, 2017, at 10:39 AM, Matthias Redies <m.redies at fz-juelich.de> wrote:
>
> Hello,
>
> I am trying to force CMAKE to include a specific static lapack library,
> set through the environment variable $LAPACK_LIB:
>
> > ls $LAPACK_LIB
> libblas_extra.a libcblas.a liblapack.a liblapacke.a libtmglib.a
>
> > echo $LAPACK_LIB
> /bgsys/local/lapack/3.7.0/lib
>
>
> This is how I am trying to do it in CMake:
>
> cmake_minimum_required(VERSION 2.5)
> project(TEST)
>
> file(GLOB_RECURSE sources src/*.f90)
>
> add_executable(cmake.x ${sources})
> find_library(MY_LAPACK liblapack.a HINTS $ENV{LAPACK_LIB}
> NO_CMAKE_LIBRARY_PATH)
>
> MESSAGE(STATUS "Lapack location: ${MY_LAPACK}")
>
> target_link_libraries(cmake.x ${MY_LAPACK} ${MY_ESSL})
>
> enable_language(Fortran)
>
>
> If I run CMake this results in:
>
> > cmake .
> -- Lapack location: /usr/lib64/liblapack.so
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /work/jias12/jias1217/lapack_test
>
>
> How can I force CMake to find the correct library file and not some
> random one laying around on the system?
>
>
> Kind regards
>
>
> Matthias
>
>
>
> ------------------------------------------------------------------------------------------------
> ------------------------------------------------------------------------------------------------
> Forschungszentrum Juelich GmbH
> 52425 Juelich
> Sitz der Gesellschaft: Juelich
> Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
> Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher
> Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
> Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
> Prof. Dr. Sebastian M. Schmidt
> ------------------------------------------------------------------------------------------------
> ------------------------------------------------------------------------------------------------
>
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community. For more information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake
More information about the CMake
mailing list