使用 Cmake 编译库

Compiling a Library with Cmake

本文关键字:编译 Cmake 使用      更新时间:2023-10-16

我正在尝试将体素库PolyVox包含在我的项目中。但是,库下载不会为您提供预编译标头,而是需要 Cmake。这不会是一个大问题,除了他们关于该主题的教程非常不完整。我以前从未使用过Cmake,搜索也没有发现这个问题。

我用Visual Studio 10编译器运行了Cmake,它生成了一堆Visual Studio项目。我将这些项目编译为 2 个库,并将库目录包含在项目的属性中。我还把PolyVox的所有头文件放在Visual Studio知道的目录中。尝试编译我的项目时,我收到链接器错误,例如:

1>Gamestate.obj : error LNK2019: unresolved external symbol "public: __thiscall PolyVox::Region::Region(class PolyVox::Vector<3,int> const &,class PolyVox::Vector<3,int> const &)" (??0Region@PolyVox@@QAE@ABV?$Vector@$02H@1@0@Z) referenced in function "public: __thiscall Gamestate::Gamestate(void)" (??0Gamestate@@QAE@XZ)

有人可以向我解释如何使用 Cmake 正确地将 PolyVox 包含在我的代码中吗?

您忘记在游戏项目中添加 polyvox 库。它位于链接器菜单中,称为"其他依赖项",IIRC。