C++ Wikiprep实用程序。无法生成Splitwiki

C++ Wikiprep实用程序。无法生成Splitwiki,c++,c,makefile,wikipedia,dbpedia,C++,C,Makefile,Wikipedia,Dbpedia,我正在尝试在我的系统上构建Wikiprep实用程序。虽然我已经构建了该实用程序,但无法构建Splitwiki实用程序。make-install指令为 splitwiki:splitwiki.c gcc-Wall-O2-lz-o$@$< 执行时,我收到以下错误消息: /tmp/ccXeAIs1.o:在函数'split'中: splitwiki.c:(.text+0xac):对“gzput”的未定义引用 splitwiki.c:(.text+0xe3):对“gzputs”的未定义引用 /tmp/c

我正在尝试在我的系统上构建Wikiprep实用程序。虽然我已经构建了该实用程序,但无法构建Splitwiki实用程序。make-install指令为

splitwiki:splitwiki.c
gcc-Wall-O2-lz-o$@$<
执行时,我收到以下错误消息:

/tmp/ccXeAIs1.o:在函数'split'中:
splitwiki.c:(.text+0xac):对“gzput”的未定义引用
splitwiki.c:(.text+0xe3):对“gzputs”的未定义引用
/tmp/ccXeAIs1.o:在函数“main”中:
splitwiki.c:(.text.startup+0xab):对“gzopen”的未定义引用
splitwiki.c:(.text.startup+0x10c):对“gzclose”的未定义引用
collect2:ld返回了1个退出状态
生成:**[splitwiki]错误1
不知怎么的,我的直觉告诉我,我错过了一些其他的包裹,尽管我不确定。 非常感谢你的帮助。谢谢。

gzput()是zlib的一部分。你可能没有联系zlib

现在我想知道,你是如何构建splitwiki的。在构建wikiprep时,我希望它是使用“make&&make install”构建的。就我而言,它不是。你能给出你用来构建splitwiki和所有输出的te命令行吗

更新:以下内容适合我:

 $ cd tools/splitwiki
 $ make splitwiki LOADLIBES=-lz
 cc     splitwiki.c -lz  -o splitwiki    # this is make output
 $
说明:我找不到Makefile处理的任何部分,也找不到README解释igg或指导如何构建splitwiki的任何部分。我的假设是,一个人只需要手动操作,这就是你尝试的方式。您可能缺少的是'-lz'(与zlib的链接)。你可以用

 cc splitwiki.c -lz -o splitwiki 
直接的。使用make是调用编译器的唯一方法:-)


更新2:对不起,昨天我似乎错过了问题中的“make install instruction is”部分。所以你好像得到了-lz开关。通常我会说安装zlib,但我有点困惑,您没有得到“/usr/bin/ld:cannotfind-lz”作为错误消息。您确定要提供与splitwiki编译相关的所有日志输出吗

谢谢。我从拥有splitwiki实用程序的Makefile的master中签出。不幸的是,我的AWS实例昨天被删除了。我会在家里设置在我系统上运行的代码,并在12小时内将收到的消息更新给你。