Я делаю довольно прямое преобразование существующей библиотеки (libtcod) в Autotools (для счастья OS X) , К сожалению, когда я переключаю Makefile.am
правило lib_LIBRARIES
на lib_LTLIBRARIES
, сборка переходит от успешного к un. Выдержка из ниже выхода:LTLIBRARIES: mv * .Tpo * .Plo, но первое не существует, а последнее уже существует
Making all in .
make[1]: Nothing to be done for `all-am'.
Making all in src
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -g -O2 -MT bresenham_c.lo -MD -MP -MF .deps/bresenham_c.Tpo -c -o bresenham_c.lo bresenham_c.c
mv -f .deps/bresenham_c.Tpo .deps/bresenham_c.Plo
mv: rename .deps/bresenham_c.Tpo to .deps/bresenham_c.Plo: No such file or directory
make[1]: *** [bresenham_c.lo] Error 1
make: *** [all-recursive] Error 1
src/Makefile.am
выглядит следующим образом:
lib_LTLIBRARIES = libtcod.la
libtcod_la_SOURCES = bresenham_c.c bresenham3_c.c bsp_c.c color_c.c ...
src/.deps
содержит:
$ ls src/.deps/
bresenham_c.Plo bresenham_c.Po ...
Могу ли я сделать очевидную ошибку здесь, или должен работать?
Я уже несколько лет бил головой об этой же проблеме. Моя программа отлично справилась с этим, пока я не попробовал ее на openSUSE12.1. Это меня укрепило. –
что такое .Tpo и .Plo, кстати? и как «autoreconf -i» помогает устранить связанные с ними проблемы? и почему это не появляется нигде в документации README или INSTALL проектов в зависимости от automake? – PypeBros
Я понятия не имею, что это такое, но он решил мою проблему в попытке скомпилировать rxp-1.5.0 как часть инструментов SPEC в CPU2006-1.2 на ARM. Так что спасибо за это. – Chris