当前位置: 技术问答>linux和unix
makefile.am中生成.a静态库的同时,链接其他.a静态库或.la动态库的问题
来源: 互联网 发布时间:2017-01-04
本文导语: 我想在makefile.am中生成一个.a静态库,同时需要链接其他程序的.a静态库。makefile.am如下: lib_LIBRARIES=libmycharon.a libmycharon_a_SOURCES=mycharon.c INCLUDES = -I$(top_srcdir)/src/include -I$(top_srcdir)/src/libstrongswan -...
我想在makefile.am中生成一个.a静态库,同时需要链接其他程序的.a静态库。makefile.am如下:
lib_LIBRARIES=libmycharon.a
libmycharon_a_SOURCES=mycharon.c
INCLUDES =
-I$(top_srcdir)/src/include
-I$(top_srcdir)/src/libstrongswan
-I$(top_srcdir)/src/libhydra
-I$(top_srcdir)/src/libcharon
AM_CFLAGS =
-DIPSEC_DIR="${ipsecdir}"
-DIPSEC_PIDDIR="${piddir}"
libmycharon_a_LIBADD = /usr/lib/libpthread.a /usr/lib/libdl.a
libmycharon_a_LIBADD += $(top_builddir)/src/libstrongswan/*.o
libmycharon_a_LIBADD += $(top_builddir)/src/libhydra/*.o
libmycharon_a_LIBADD += $(top_builddir)/src/libcharon/*.o
问题出在红色的哪一行,我想链接libpthread.a线程库,可是不成功。试了一下,只有写成链接.o目标文件才行,如绿色的三行所示。
谁有同样的问题吗,怎么解决的呢??谢谢了啊
lib_LIBRARIES=libmycharon.a
libmycharon_a_SOURCES=mycharon.c
INCLUDES =
-I$(top_srcdir)/src/include
-I$(top_srcdir)/src/libstrongswan
-I$(top_srcdir)/src/libhydra
-I$(top_srcdir)/src/libcharon
AM_CFLAGS =
-DIPSEC_DIR="${ipsecdir}"
-DIPSEC_PIDDIR="${piddir}"
libmycharon_a_LIBADD = /usr/lib/libpthread.a /usr/lib/libdl.a
libmycharon_a_LIBADD += $(top_builddir)/src/libstrongswan/*.o
libmycharon_a_LIBADD += $(top_builddir)/src/libhydra/*.o
libmycharon_a_LIBADD += $(top_builddir)/src/libcharon/*.o
问题出在红色的哪一行,我想链接libpthread.a线程库,可是不成功。试了一下,只有写成链接.o目标文件才行,如绿色的三行所示。
谁有同样的问题吗,怎么解决的呢??谢谢了啊
|
可以使用.la,使用.a就会链接出错。