首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理Makefiles以合并两个独立的程序

如何处理Makefiles以合并两个独立的程序
EN

Stack Overflow用户
提问于 2013-06-26 23:55:01
回答 1查看 199关注 0票数 0

我试着用:

http://nfc-tools.org/index.php?title=Nfc-eventdhttps://code.google.com/p/libfreefare/

创建一个使用这两种代码的新程序。

我从复制和粘贴代码开始(从libfreefare到make )到nfc-eventd.c,在运行mifare-classic-read-ndef.c时得到了预期的错误:

代码语言:javascript
复制
...
make[3]: Entering directory `/home/kapcom01/temp/nfc-eventd/src'
  CCLD   nfc-eventd
nfc-eventd.o: In function `main':
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:380: undefined reference to `freefare_get_tags'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:387: undefined reference to `freefare_get_tag_type'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:395: undefined reference to `freefare_get_tag_uid'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:398: undefined reference to `freefare_get_tag_friendly_name'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:407: undefined reference to `mifare_classic_connect'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:470: undefined reference to `freefare_free_tags'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:414: undefined reference to `mad_read'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:418: undefined reference to `mad_nfcforum_aid'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:418: undefined reference to `mifare_classic_nfcforum_public_key_a'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:418: undefined reference to `mifare_application_read'
/home/kapcom01/temp/nfc-eventd/src/nfc-eventd.c:422: undefined reference to `tlv_decode'
collect2: error: ld returned 1 exit status
make[3]: *** [nfc-eventd] Error 1
make[3]: Leaving directory `/home/kapcom01/temp/nfc-eventd/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/kapcom01/temp/nfc-eventd/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/kapcom01/temp/nfc-eventd'
make: *** [all] Error 2

显然,我必须以某种方式链接freefare.h和libreefare的所有其他源文件,但我不知道如何..。

只是#include "freefare.h"和复制粘贴文件到同一个目录不起作用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-27 00:28:28

您是否试图通过将库代码的片段直接复制到程序中来使用NFC库?我不知道那是怎么回事。您需要做的是:(a)为平台构建库或下载预编译版本;(b)阅读库提供的API文档,并在代码中使用该API;(c)在编译程序时,可以添加-lfreefare或类似于Makefile中的链接行来链接库。(库的文档可能也会告诉您如何做到这一点。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17332464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档