Ошибка компоновщика OpenVDB: неразрешенные внешние символы

Я хочу использовать библиотеку OpenVDB в проекте. Библиотека успешно скомпилирована в Windows7 x64 в версии выпуска с использованием \ MD (как описано в https://github.com/rchoetzlein/win_openvdb).
OpenVDB_cookbook компилируется и также успешно выполняется. Если я добавлю свой код в кулинарную книгу, он также будет успешно компилироваться и выполняться.

Но,

  • Если я свяжу библиотеку с существующим проектом,

  • или я копирую и вставляю тот же код (из поваренной книги) в новый проект и использую те же файлы cmakelists.txt, Find * .cmake и все те же параметры из свойств проекта, что и из поваренной книги,

выдает ошибку компоновщика ‘LNK2019: неразрешенные внешние символы «void_cdecl openvdb :: v3_0_0 :: initialize (void)», на которые ссылается функция main

Даже самый простой код формы:

#include <openvdb.h>
void main()
{
openvdb::initialize();
}

выдает эту ошибку компоновщика.

Есть идеи, что я делаю не так? Я нахожусь на этом в течение нескольких дней и не смог решить это.

Все библиотеки IlmBase, OpenEXR, glew, glfw, boost и OpenVDB успешно связаны с помощью cmake и присутствуют на странице свойств проекта.

Спасибо вам за помощь.

0

Решение

Проблема была решена добавлением dir \ src. и dir \ src .. для дополнительных директорий включения в свойствах-> C / C ++ -> General. Где dir — каталог, в котором находится источник и сборка. Я не знаю, почему я должен был добавить это все же.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]