编译时链接库和头文件

时间:2017-03-07 10:13:18

标签: c++ c gcc bson wiredtiger

我正在尝试在编译程序时链接libbsonwiredtiger库。我的程序writer.cpp是一个包含

的简单文件
#include <bson.h>
#include <wiredtiger.h>

位于顶部,并使用libbson和wiredtiger中的一些函数。

我使用gcc -l wiredtiger -l bson-1.0 -I/usr/include/libbson-1.0 writer.cpp进行编译。

但是,这会遇到一些编译错误,例如:

writer.cpp:(.text+0x1c1): undefined reference to `bson_reader_new_from_file'
writer.cpp:(.text+0xb3): undefined reference to `wiredtiger_open'

Bson_reader_new_from_file在libbson API中定义,wiredtiger_open在wiredtiger API中定义。如果链接正确,如果编译期间的链接正确,则不应该未定义。

其他一些信息:bson.h位于/usr/include/libbson-1.0wiredtiger.h位于/usr/local/includelibbson-1.0.so位于/usr/lib,{{1} }在libwiredtiger.so

我应该如何更改编译命令,以便可以编译我的程序而不会出现问题?提前谢谢!

0 个答案:

没有答案