У меня проблема со скриптом настройки, проверяющим наличие некоторых основных функций,
AC_CHECK_FUNCS([floor gettimeofday memset pow sqrt sin exp])
При определенных критериях ожидаемые результаты (checking for x... yes
). В противном случае математические функции, указанные выше, утверждаются, что они не определены. Разница заключается в том, что сначала нужно проверить некоторые подпольные процедуры. Это проверено, AC_CHECK_LIB([lapack],[dsyev_],...
. Если эти проверки не выполняются первыми, то вышеприведенные математические функции не проверяются (финальная компиляция работает).
Я уменьшил скрипт конфигурации до следующего, который воссоздает проблему,
AC_INIT([TEST], [0.0], [none@none.com])
#AC_CHECK_LIB([lapack],[dsyev_], , AC_MSG_FAILURE([Missing lapack]))
AC_CHECK_FUNCS([floor gettimeofday memset pow sqrt sin exp])
Раскомментирование второй строки приводит к правильным визуальным результатам. Я предполагаю, что математическая библиотека не включена или проверена по некоторой причине. На самом деле AC_CHECK_LIB([m],[exp])
отлично работает.
В чем причина этого и как правильно использовать эту директиву? Какие соображения по поводу x-платформы мне следует соблюдать?