Компиляция библиотеки с помощью Cmake

Я пытаюсь включить PolyVox, библиотеку вокселей, в свой проект. Однако загрузка библиотеки не предоставляет вам предварительно скомпилированные заголовки и вместо этого требует Cmake. Это не было бы большой проблемой, за исключением того, что их руководство по этому вопросу чрезвычайно неполно. Я никогда раньше не использовал Cmake, и поиск не пролил свет на проблему.

Я запустил Cmake с компилятором Visual Studio 10, который сгенерировал кучу проектов 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)

Может кто-нибудь объяснить мне, как правильно включить PolyVox в мой код с помощью Cmake?


person Zeke    schedule 03.10.2012    source источник


Ответы (1)


Вы забыли добавить библиотеку polyvox в свой игровой проект. Он находится в меню Linker и называется «Дополнительные зависимости», IIRC.

person arrowd    schedule 03.10.2012
comment
Ба, ты прав. У меня ушел целый день на исправление такой глупой ошибки. Спасибо. - person Zeke; 03.10.2012