Reference 对已定义函数的未定义引用

Reference 对已定义函数的未定义引用,reference,undefined,rpm,Reference,Undefined,Rpm,我试图从源代码构建rpm。我认为configure没有正确找到bzip2库。现在,我得到了一个编译库中未定义的引用。我在Makefile中添加了-L/usr/lib-lbz2,但仍然出现以下错误: root:/usr/src/rpm/rpm-4.4.2.3/rpmio/.libs#nm librpmio-4.4.so| grep BZ2 U BZ2_bzclose U BZ2_bzdopen U BZ2_bzerror U BZ2_bzflush U BZ2_bzopen U BZ2_bzrea

我试图从源代码构建rpm。我认为configure没有正确找到bzip2库。现在,我得到了一个编译库中未定义的引用。我在Makefile中添加了-L/usr/lib-lbz2,但仍然出现以下错误:

root:/usr/src/rpm/rpm-4.4.2.3/rpmio/.libs#nm librpmio-4.4.so| grep BZ2
U BZ2_bzclose
U BZ2_bzdopen
U BZ2_bzerror
U BZ2_bzflush
U BZ2_bzopen
U BZ2_bzread
U BZ2_bzwrite

我希望在不必再次配置的情况下更正错误。

您实际遇到了什么问题?在我看来,这种输出是正常的。该库应该链接libbz2并在运行时解析它们。不是这样吗?什么是ldd librpmio-4.4.so | grep bz2输出?由于这些编译错误,我无法编译rpm。ldd函数返回'libbz2.so.1.0=>/lib/libbz2.so.1.0(0xb7799000)'/usr/lib/libbz2.so符号链接到/lib/libbz2.so.1.0。它可以在编译时直接在库中解决吗?您到底得到了什么错误?当试图编译时,具体是什么?该库似乎已正确编译,因此在链接时应能正确工作。