Подавить "источник C видел, но` CC` не определено "в automake? - PullRequest
9 голосов
/ 11 марта 2012

У меня есть Makefile.am для компиляции исходного кода Ocaml с ocamlbuild. Однако даже хотя у меня

AM_INIT_AUTOMAKE([foreign no-dependencies])

в моем configure.ac automake считает, что для установки исполняемых файлов должен присутствовать компилятор C. То есть, если я добавлю Makefile.am целевой исполняемый файл под bin_PROGRAMS, который должен быть собран с помощью ocamlbuild, autoreconf (версия 1.11.3) скажет мне:

Makefile.am: C source seen but `CC' is undefined
Makefile.am:   The usual way to define `CC' is to add `AC_PROG_CC'
Makefile.am:   to `configure.ac' and run `autoconf' again.
autoreconf: automake failed with exit status: 1

Я не хочу включить AC_PROG_CC, потому что мой исходный код не содержит C. Это чистый Ocaml. Что я могу сделать? (У меня такая же проблема с libexec_PROGRAMS.)

Ответы [ 2 ]

5 голосов
/ 11 марта 2012

Если вы добавите AC_SUBST([CC]) к configure.ac, этого будет достаточно, чтобы определить переменную в отношении Automake.

5 голосов
/ 11 марта 2012

Это может быть ненужным, но повредит ли что-нибудь, просто добавив AC_PROG_CC в Makefile.am? Путь наименьшего сопротивления и все.

Отработка этого десятилетнего сообщения в списке рассылки:

http://lists.gnu.org/archive/html/automake/2003-01/msg00057.html

Похоже, вам может понадобиться определить progname_SOURCES как пустое. Если я правильно понимаю сообщение, если вы пропустите явное объявление, progname_SOURCES будет неявно определено как progname.c.

...