Newsgroup: it.comp.os.linux.development
Titolo: Automake e librerie statiche!

Sto impazzendo! E' la vigilia di natale, fatemi questo regalo!!!!!
Come al solito sto' litigando con automake/autoconf....
Avendo i sorgenti divisi in varie sottodirectory (/src, /src/pippo....) 
come e' possibile generare una libreria STATICA (pippo.a) da linkare col 
  resto del programma?
Deja non mi aiuta...
Siete la mia ultima speranza..
 >>CoMiX<< [un pinguino triste..]

   resto del programma?
In src/Makefile.am :
bin_PROGRAMS = pluto
pluto_SOURCES = main.c
pluto_LDADD = pippo/pippo.a
SUBDIRS = pippo
In src/pippo/Makefile.am :
noinst_LIBRARIES = pippo.a
pippo_a_SOURCES = src1.c src1.h \
                  src2.c src2.h
Nel Makefile.am principale :
SUBDIRS = src
Al
-- 
Errare e' umano, ma per fare |        Al - BgLUG member
veramente casino ci vuole la |
password di root - anonymous | Magis usu discantur quam scripto

   resto del programma?
[cowo@localhost src]$ pwd
/home/cowo/programmi/Libmtrwe-0.0.2/src
[cowo@localhost src]$ cat Makefile.am 
INCLUDES = -I.. -I../include
CFLAGS = @CFLAGS@ 
lib_LIBRARIES           = libmtrwe.a
libmtrwe_a_SOURCES      = libmtrwe.c \
                implementation.c \
                producers.c \
                consumers.c \
                encoders.c
[cowo@localhost dae]$ pwd
/home/cowo/programmi/Libmtrwe-0.0.2/examples/dae
[cowo@localhost dae]$ cat Makefile.am
AUTOMAKE_OPTIONS = foreign
if BUILD_DAE
dae_bin = dae
dae_sources = dae.c
else
dae_bin = 
dae_sources = 
endif
INCLUDES = -I../../ -I../../include
CFLAGS = @CFLAGS@ @AO_CFLAGS@ -Dsize16=short -Dsize32=int
EXTRA_PROGRAMS =  $(dae_bin)
dae_SOURCES = $(dae_sources)
dae_LDADD = ../../src/libmtrwe.a -lcdda_interface -lcdda_paranoia @AO_LIBS@
docdir = $(datadir)/doc/$(PACKAGE)/examples/
doc_DATA = dae.c $(dae_bin)
 
--
  Giuseppe "Cowo" Corbelli \/\ My software: 
http://yoda.ing.unibs.it/~cowo
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail**
  -<! *Real* programmers use cat > a.out! No way, /real/ ones
        use zcat > a.out 'cause you can type faster that way. !>-
                -- from a Slashdot discussion

Giuseppe Corbelli wrote:

Bene, e' praticamente come il mio..il prob e' che in fase di linking mi 
spara una marea di errori..non trova le classi...
Cmq, ho risolto..non so come, ma ho risolto.. ;)
Un altra domanda, hai usato:
 > docdir = $(datadir)/doc/$(PACKAGE)/examples/
 > doc_DATA = dae.c $(dae_bin)
suppongo sia utilizzato in fase di installazione (?)
Nel mio caso devo installare delle immagini usate dal programma.
Ho usato
datadir = $(prefix)/hydrogen
data_DATA = \
	img
Come vedi, ho usato la variabile "prefix", ne esistono altre piu' 
specifiche?
Datemi qualche link!!!!!!!
Comunque grazie di tutto...e AUGURI!!!
--
Alessandro >>CoMiX<< Cominu
http://hydrogen.sf.net
e-mail: 
aco...@tiscalinet.it
Icq: 116354077
Linux User # 203765
[That's not a bug, that's a feature..]

 Datemi qualche link!!!!!!!
info autoconf, sezione "preset output variables".
--
  Giuseppe "Cowo" Corbelli \/\ My software: 
http://yoda.ing.unibs.it/~cowo
    **ANTI-SPAM** -- **Substitute IHATESPAM with cowo to reply by mail**
           -<! Failure is not an option...it's bundled with Microsoft !>-