Мне сложно связать clapack с моим проектом cmake на linux и очень признателен за любую помощь.Связывание проекта Clapack с cmake Linux
Я успешно построил и связал clapack с тем же проектом на osx, что делает эту ситуацию особенно неприятной.
Я сначала скачал clapack-3.2.1-cmake и скомпилировал проект. Затем я скопировал файлы .a и соответствующие .h в каталог с именем CLAPACK в корневом каталоге моего проекта. (libblas.a, libf2c.a, liblapack.a и libtmglib.a в CLAPACK/lib и blaswrap.h, clapack.h и f2c.h в CLAPACK)
Затем я изменил файл cmake моего проекта, чтобы включить
INCLUDE_DIRECTORIES(${VMT_PRJ_SOURCE_DIR}/CLAPACK)
LINK_DIRECTORIES(${VMT_PRJ_SOURCE_DIR}/CLAPACK/lib)
LINK_LIBRARIES(f2c blas lapack tmglib)
Эти шаги позволили мне собрать на мой макинтош, но при передаче проекта в поле Linux и перекомпиляции clapack библиотеки Я получаю ссылки ошибки, которые выглядят как этот
/home/siggik/Development/SFT-9012/CLAPACK/lib/liblapack.a(sgesvd.c.o): In function `sgesvd_':
sgesvd.c:(.text+0x456): undefined reference to `s_cat'
sgesvd.c:(.text+0x1fa4): undefined reference to `s_cat'
/home/siggik/Development/SFT-9012/CLAPACK/lib/liblapack.a(sormbr.c.o): In function `sormbr_':
sormbr.c:(.text+0x39f): undefined reference to `s_cat'
sormbr.c:(.text+0x45c): undefined reference to `s_cat'
sormbr.c:(.text+0x527): undefined reference to `s_cat'
Любая помощь будет Великий. Спасибо,
Скотт
Правильно, сэр, я думал, что это в соответствующем порядке, но оказывается, что это должно было быть LINK_LIBRARIES (LAPACK Блас tmglib f2c) – Scottfivefour