2015-09-02 40 views
1

使用autotools和libtool,我需要將子目錄中的幾個庫合併到頂級目錄中更大的靜態庫。下面是模式:使用靜態libtool庫沒有源文件

# src/Makefile.am 

ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4                                
AUTOMAKE_OPTIONS = subdir-objects                                  

SUBDIRS = foo bar .                                                                                                                      

noinst_LTLIBRARIES = libbig.la                              

libbig_la_LIBADD = \                                
    foo/libfoo.la \ 
    foo/libbar.la                                

在子目錄:

# src/foo/Makefile.am 

ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4                                

noinst_LTLIBRARIES = libfoo.la                              

libbig_la_SOURCES = \                                
    foo.cpp \ 
    foo_ji.cpp 

它說沒有規則,使目標libbig.la。是否有可能使用沒有源文件的庫(靜態或共享)?

回答

1

它需要讀取libfoo_la_SOURCESlibbig_la_SOURCESlibbig_la_LIBADD

+0

但是......我沒有任何資源,只有兩個靜態庫 –

+0

添加你沒有任何規則任何補充libbig.la瞬間因爲你錯過了_la_無處不在 – arved