MonetDB客户端编译

时间:2018-08-02 00:45:24

标签: c database monetdb

我是数据库社区的初学者。我一直在尝试使用C / C ++ MAPI与MonetDB进行交互。我已经在Ubuntu 14.04 LTS计算机上安装了MonetDB,当我尝试从here编译示例程序时,出现以下错误:

$ gcc test.c -I /usr/include/monetdb -lmapi
  

test.c :(。text + 0x29):对mapi_explain_query' test.c:(.text+0x35): undefined reference to mapi_result_error'的未定义引用   test.c :(。text + 0x50):对mapi_explain_result' test.c:(.text+0x5c): undefined reference to mapi_next_result'的未定义引用   test.c :(。text + 0x6d):对mapi_close_handle' test.c:(.text+0x79): undefined reference to mapi_destroy'的未定义引用   test.c :(。text + 0x98):对mapi_explain' test.c:(.text+0xa4): undefined reference to mapi_destroy'的未定义引用   /tmp/cctyQopc.o:在函数query': test.c:(.text+0xf9): undefined reference to mapi_query'中   test.c :(。text + 0x110):对mapi_error' /tmp/cctyQopc.o: In function update'的未定义引用:   test.c :(。text + 0x160):对mapi_close_handle' /tmp/cctyQopc.o: In function main'的未定义引用:   test.c :(。text + 0x1b6):对mapi_connect' test.c:(.text+0x1c6): undefined reference to mapi_error'的未定义引用   test.c :(。text + 0x238):对mapi_fetch_field' test.c:(.text+0x24d): undefined reference to mapi_fetch_field'的未定义引用   test.c :(。text + 0x277):对mapi_fetch_row' test.c:(.text+0x287): undefined reference to mapi_close_handle'的未定义引用   test.c :(。text + 0x293):对`mapi_destroy'的未定义引用   collect2:错误:ld返回1退出状态

此问题以前曾被问过here,并且答案不能解决问题(尽管答案被接受,但我不确定为什么)。任何帮助/说明都很棒!

1 个答案:

答案 0 :(得分:0)

在Ubuntu 18.04上使用:

pkg-config --libs monetdb-mapi和pkg-config --cflags monetdb-mapi

因为Ubuntu没有bzip2.pc而无法使用:

它是如何工作的:

gcc main.c -I / usr / include / monetdb -lmapi -lssl -lcrypto -lstream -lcurl -llzma -lbz2