Libexif 未定义的引用错误

Posted

技术标签:

【中文标题】Libexif 未定义的引用错误【英文标题】:Libexif undefined reference error 【发布时间】:2012-11-26 21:53:38 【问题描述】:

我有一个使用 libexif C 库的程序,在此处找到 http://libexif.sourceforge.net/

我安装了这个库,它位于 /usr/include/libexif

我将这些包含在程序的顶部

#include <libexif/exif-data.h>
#include <libexif/exif-content.h>
#include <libexif/exif-entry.h>

我的编译语句:

`gcc -o test test.c` 

编译时出现这些错误

/tmp/ccUUWpcw.o: In function `show_tag':
test.c:(.text+0x91): undefined reference to `exif_content_get_entry'
test.c:(.text+0xc0): undefined reference to `exif_entry_get_value'
test.c:(.text+0xef): undefined reference to `exif_tag_get_name_in_ifd'
/tmp/ccUUWpcw.o: In function `main':
test.c:(.text+0x179): undefined reference to `exif_data_new_from_file'
test.c:(.text+0x1cd): undefined reference to `exif_data_unref'
collect2: ld returned 1 exit status

程序可以正常读取包含的文件,但由于某种原因不知道这些功能。我安装库时所做的只是解压缩,./configure, make && make install

我需要在别处或类似的地方引用这个库吗?

感谢您的帮助!

【问题讨论】:

Why do I get “undefined reference” errors even when I include the right header files? 【参考方案1】:

是的,您需要链接库:

gcc test.c -o test -lexif

【讨论】:

谢谢,我是这么认为的。这可能是一个菜鸟问题,但您是如何知道链接名称“-lexif”的。我很确定我需要链接我只是不确定链接名称是什么。 @Irlanco 当你使用-lNAME gcc 搜索libNAME 并链接它

以上是关于Libexif 未定义的引用错误的主要内容,如果未能解决你的问题,请参考以下文章

错误: - 未定义引用 `_imp__GetStockObject@4' 和未定义引用 `_imp__SetBkMode@8'

未捕获的引用错误 - 未定义函数

未捕获的引用错误:未定义回调

错误:未定义对...的引用有啥问题? [复制]

未捕获的引用错误:未定义 Toastify

什么是未定义的引用/未解决的外部符号错误,我该如何解决?