【问题标题】:Compiling a Library with Cmake使用 Cmake 编译库
【发布时间】:2012-10-03 04:31:11
【问题描述】:

我正在尝试将体素库 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 正确地包含到我的代码中吗?

【问题讨论】:

    标签: c++ visual-studio linker cmake voxel


    【解决方案1】:

    您忘记在游戏项目中添加 polyvox 库。它在 Linker 菜单中,称为“附加依赖项”,IIRC。

    【讨论】:

    • 呸,你是对的。我花了一整天的时间来解决这样一个愚蠢的错误。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-11-20
    • 2018-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多