0

我在 ubuntu 上使用 gcc 4.4.3。我使用命令安装了 cmph 库工具 0.9-1

sudo apt-get install libcmph-tools

现在,当我尝试编译示例程序 vector_adapter_ex1.c 时,gcc 能够在其包含文件中检测到 cmph.h 库,但显示多个错误,例如

vector_adapter_ex1.c:(.text+0x93): 未定义对cmph_io_vector_adapter' vector_adapter_ex1.c:(.text+0xa3): undefined reference tocmph_config_new' 的引用 vector_adapter_ex1.c:(.text+0xbb): 未定义对cmph_config_set_algo' vector_adapter_ex1.c:(.text+0xcf): undefined reference tocmph_config_set_mphf_fd' 的引用

尽管如此,这些都是在 cmph 库的源代码中定义的。

谁能告诉可能发生的错误或建议另一种方法来构建最小的完美哈希函数。

4

3 回答 3

0

gcc $(pkg-config --libs cmph) vector_adapter_ex1.c假设已安装库,您可以这样做。这将正确链接您。

于 2012-06-09T22:37:28.087 回答
0

这可能听起来很蹩脚,但你有链接到 libcmph.la 吗?

于 2012-04-10T06:44:09.037 回答
0

您必须在编译时链接 cmph 库。 gcc <file name> -lcmph将链接 cmph 库。此外,您可以使用 -L 选项指定搜索库的目录。

于 2017-01-06T21:32:07.760 回答