作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 tokyo Cabinet 的新手,我已经安装了它并且我已经运行了示例 C 程序,但出现错误...当我用 gcc 编译时
gcc -O tcadbex.c
/tmp/cc7IEOht.o: In function `main':
tcadbex.c:(.text+0xd): undefined reference to `tcadbnew'
tcadbex.c:(.text+0x1f): undefined reference to `tcadbopen'
tcadbex.c:(.text+0x58): undefined reference to `tcadbput2'
tcadbex.c:(.text+0x74): undefined reference to `tcadbput2'
tcadbex.c:(.text+0x90): undefined reference to `tcadbput2'
tcadbex.c:(.text+0xc1): undefined reference to `tcadbget2'
tcadbex.c:(.text+0x10e): undefined reference to `tcadbiterinit'
tcadbex.c:(.text+0x11c): undefined reference to `tcadbget2'
tcadbex.c:(.text+0x156): undefined reference to `tcadbiternext2'
tcadbex.c:(.text+0x164): undefined reference to `tcadbclose'
tcadbex.c:(.text+0x18d): undefined reference to `tcadbdel'
collect2: ld returned 1 exit status
谁能告诉我这有什么问题......
最佳答案
是的,您几乎肯定必须链接到 Tokyo Cabinate 的库文件(无论是什么)。
通常,您会使用如下命令:
gcc -o tcadbex -L/usr/lib -lxyz tcadbex.c
地点:
-L
指定库的搜索路径。-l
列出用于搜索 undefined symbol 的库。链接器将按照一定的规则寻找库,将 xyz
转换为 libxyz.so
这样的文件名。
事实上,网上搜索一下就发现了this (在一行中,我只是为了可读性而将其拆分):
gcc -I/usr/local/include tc_example.c -o tc_example
-L/usr/local/lib -ltokyocabinet -lz -lbz2 -lrt -lpthread -lm -lc
作为要使用的命令行。
所以我建议您需要针对您的具体情况(再次,一行):
gcc -I/usr/local/include tcadbex.c -o tcadbex
-L/usr/local/lib -ltokyocabinet -lz -lbz2 -lrt -lpthread -lm -lc
关于tokyo cabate C程序的编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3554613/
我是 tokyo Cabinet 的新手,我已经安装了它并且我已经运行了示例 C 程序,但出现错误...当我用 gcc 编译时 gcc -O tcadbex.c /tmp/cc7IEOht.o: In
我是一名优秀的程序员,十分优秀!