2009-07-27 5 views
7

Sto eseguendo una conversione piuttosto semplice di una libreria esistente (libtcod) in Autotools (per OS X felicità) . Sfortunatamente, quando cambio la regola lib_LIBRARIES di Makefile.am in lib_LTLIBRARIES, la compilazione passa da completata a positiva. Estratto dalla uscita al di sotto:LTLIBRARIES: mv * .Tpo * .Plo, ma il primo non esiste e il secondo già fa

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 assomiglia a questo:

lib_LTLIBRARIES = libtcod.la 
libtcod_la_SOURCES = bresenham_c.c bresenham3_c.c bsp_c.c color_c.c ... 

src/.deps contiene:

$ ls src/.deps/ 
bresenham_c.Plo bresenham_c.Po ... 

sto facendo un errore evidente qui, o dovrebbe questo lavoro?

risposta

10

Sì, sto facendo un errore evidente. Avevo bisogno di eseguire autoreconf -i per creare uno script non vuoto ltmain.sh; quello esistente ha fatto ../libtool qui un no-op.

+0

Sono stato per un po 'di tempo questo problema con me stesso. Il mio programma è andato benissimo, fino a quando l'ho provato su openSUSE12.1. Questo mi ha risolto. –

+3

cosa sono .Tpo e .Plo, a proposito? e in che modo 'autoreconf -i' aiuta a risolvere i problemi relativi a loro? e perché questo non appare da nessuna parte nella documentazione README o INSTALL dei progetti che dipendono da automake? – PypeBros

+0

Non ho idea di cosa sia questo, ma ha risolto il mio problema nel tentativo di compilare rxp-1.5.0, come parte degli strumenti SPEC in CPU2006-1.2 su ARM. Quindi grazie. – Chris

Problemi correlati