如何将依赖库与makefile链接

时间:2013-04-29 05:04:46

标签: c linux makefile

依赖库:libxml >= 2.7.6 openssl >= 0.9.8数字签名生成需要额外的库:libXslt >= 1.1.24 libxmlsec1 >= 1.2.9

这些是依赖库。我有项目代码,但用于运行makefile所需的依赖库。

我已下载这些库并复制到usr/include文件夹然后安装。 但我不知道如何在makefile中添加这些依赖库的确切方法... 我使用的是ubuntu 11.04。

#GCC compiler

CC=gcc
CFLAGS= -D__XMLSEC_FUNCTION__=__FUNCTION__ -DXMLSEC_NO_XSLT=1 -DXMLSEC_NO_XKMS=1 -I/usr/include/libxml2 -DXMLSEC_CRYPTO_DYNAMIC_LOADING=1 -DXMLSEC_CRYPTO=\"openssl\" -DUNIX_SOCKETS -DXML_SECURITY -DDEBUG -I/usr/include/protobuf-c-0.15  -L/usr/include/libxslt-1.1.24
LDFLAGS= -lcrypto -I/usr/include/libxml2 -lxml2     -I/usr/include/xmlsec1 -lxmlsec1 -lprotobuf-c       
LIBS=-lm

fileClient:                 
    $(CC) $(CFLAGS) $(LDFLAGS)  $(LIBS) src/main.c src/file2.c src/file3.pb-c.c -o fileClient   

clean:
        $(RM)   fileClient  *.o *~  


        #

1 个答案:

答案 0 :(得分:1)

不要在Makefile中执行此操作,而应使用

等代码添加到某些标题中
#if LIXML_VERSION < 20800
#error too old version of libxml need 2.8.0 or newer 
#endif

您可能会对autotoolsautoconfautomake和朋友)以及pkg-config

感兴趣

此外,最好通过制作.deb包来处理依赖关系管理。 (所以你想要一个像libxml2-dev

这样的Ubuntu软件包