0

我正在尝试编译一个 c++ 项目,它需要 capn pronto 和 snappy。我已经安装了这些使用:

brew install capnp
brew install snappy

但我认为我现在需要链接这些库,因为当我尝试编译我的项目时出现以下错误:

./base/columnfile.h:8:10: fatal error: 'kj/debug.h' file not found

kj 是 Capn Pronto 中包含的一个库。我尝试在制作时使用命令 -lkj 链接它,但这不起作用。

4

1 回答 1

1

您引用的错误是编译时错误,而不是链接时错误。编译器找不到 KJ 标头。要解决此问题,您需要将-I标志传递给编译器,指示在何处搜索标头。通常,-I/usr/local/include这是您需要的,尽管它取决于头文件的安装位置。或者,如果您已经pkg-config安装,Cap'n Proto 会向它注册,这样您就pkg-config --cflags capnp可以确定要传递的标志(以及pgk-config --libs capnp链接器标志)。

于 2015-10-24T21:47:06.323 回答