У меня есть библиотека C, GPTL, которая построена с помощью libtool.(https://github.com/jmrosinski/GPTL)
У меня есть библиотека-обертка на языке Fortran, GPTL-fortran, которая вызывает библиотеку C. (https://github.com/NOAA-GSD/GPTL-fortran)
У меня есть третье репозиторий github, GPTL-all. (https://github.com/NOAA-GSD/GPTL-all). Я хотел бы использовать AC_CONFIG_SUBDIR, чтобы GPTL-all собирал библиотеки C и Fortran.
Проблема заключается в том, что библиотека Fortran зависит от библиотеки C. При сборке отдельно Cсначала создается и устанавливается библиотека, затем создается библиотека Fortran с CPPFLAGS и LDFLAGS, которые указывают на местоположение установленной библиотеки C.
Есть ли способ добиться этого с помощью комбинированного пакета, устанавливающего Cи библиотеки Fortran?
Вот что у меня пока есть:
# This is the autoconf file for GPTL-all, a combined C and Fortran
# library distribution.
AC_PREREQ([2.69])
AC_INIT([GPTL-all], [1.0.0], [edward.ha@noaa.gov])
# Find out about the host we're building on.
AC_CANONICAL_HOST
# Find out about the target we're building for.
AC_CANONICAL_TARGET
# Initialize automake.
AM_INIT_AUTOMAKE([foreign subdir-objects])
# Keep macros in an m4 directory.
AC_CONFIG_MACRO_DIR([m4])
# Set up libtool.
LT_PREREQ([2.4])
LT_INIT()
AC_CONFIG_FILES([Makefile])
AC_CONFIG_SUBDIRS([GPTL
GPTL-fortran])
AC_OUTPUT
Но это не удается. Когда я запускаю configure, он запускает настройку библиотеки C просто отлично. Но конфигурация библиотеки fortran не удаетсяпотому что он проверяет наличие библиотеки C:
checking for GPTLinitialize in -lgptl... no
configure: error: Can't find or link to the GPTL C library.
configure: error: ./configure failed for GPTL-fortran
Как заставить GPTL-fortran зависеть от GPTL?