我正在尝试在 SUSE10 机器上从源代码构建 mosh,并收到以下错误:
checking for protobuf... no
configure: error: Package requirements (protobuf) were not met:
No package 'protobuf' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables protobuf_CFLAGS
and protobuf_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
我下载了 protobuf 的源代码并将其安装在自定义路径中。我没有使用包管理器来做这些事情,而且由于问题范围之外的各种原因,我也无法使用包管理器。我将自定义路径添加到我的 PATH 并重新进行了处理。通常,这对于 configure 来说已经足够了,但在这种情况下它不起作用。我将 protobuf 的前缀添加到 PKG_CONFIG_PATH,但仍然遇到此错误。
我下一步该做什么才能解决这个错误?
答案1
要修复此问题,请按如下方式运行:
export PREFIX=~/usr
PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig;
./configure --prefix=${PREFIX}
答案2
您可能需要安装 protobuf。之后一切正常。
答案3
如果其他人遇到此问题,我在这里找到了解决方案:https://narkive.com/kRRnccDo.2
作为安装 protobuf 的一部分,它应该安装了一个名为 protobuf.pc 的文件,可能位于 /usr/local/lib/pkgconfig/protobuf.pc。假设它就在那里,请尝试:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig./configure
我最初尝试从 protobuf github 安装二进制文件,但其中不包含 protobuf.pc 文件。最后我不得不从源代码构建 protobuf,然后执行
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
这与上述 Roney 的解决方案类似,但不完全相同