ошибка связывания с CMake и Visual Studio 2010

#c #visual-studio-2010

#c #visual-studio-2010

Вопрос:

Я пытаюсь скомпилировать библиотеку osgearth с помощью VS2010. Библиотека использует CMake, поэтому после установки всех зависимостей она генерирует файл решения VS2010. Однако при запуске сборки в VS я получаю эту ошибку компоновщика (и 200 подобных)

Ошибка 7 ошибка LNK2019: неразрешенный внешний символ «__declspec(dllimport) public: void __thiscall std::basic_ofstream >::`деструктор vbase’ (void)» (_imp ??_D? $basic_ofstream@DU? $char_traits@D @std@@@std@@QAEXXZ) ссылка в функции «public: virtual void __thiscall osgEarth::DiskCache::setImage(класс osgEarth::TileKey const amp;,структура osgEarth::CacheSpec const amp;,класс osg::Image const *)» (?setImage@DiskCache@osgEarth@@UAEXABVTileKey@2@abucachesp@2@PBVImage@osg @@@Z) C:swprojosgearth-srcsrcosgEarthCaching.obj Осгарт

Я не очень хорошо знаком с C , есть ли что-нибудь еще, что мне нужно настроить?

Комментарии:

1. это было восемь лет назад, извините 🙂

Ответ №1:

Вам не хватает ссылки на std::ofstream . Вам нужен либо #include в одном из ваших файлов, либо ссылка на стандартную библиотеку dll в вашем проекте.