В настоящее время я работаю над проектом, который использует следующие библиотеки: SDL2, SDL_ttf, SDL_image, SDL_mixer и CHAI3D. Используя библиотеки по отдельности, код отлично работает на VS2013. Однако, когда я пытаюсь использовать обе библиотеки в одном проекте, возникает много ошибок. Мне удалось настроить библиотеки SDL, добавив их файлы include и lib в каталоги VC ++. Я пытаюсь добавить #include "chai3d.h"
в этот проект, который я поместил в chai3d-3.1.0 \ examples .... \ Project \ c ++ files. Что возвращает:
фатальная ошибка C1083: не удается открыть включаемый файл: 'chai3d.h': нет такого файла или каталога
Итак, я добавляю в Свойства> Свойства конфигурации> Каталоги VC ++> подключаемые каталоги Путь (../chai3d/src) к папке, которая включает файл "chai3d.h". Это переходит к двум следующим ошибкам:
фатальная ошибка C1083: не удается открыть включаемый файл: 'Eigen / Eigen': нет такого файла или каталога
Я нахожу этот файл в chai3d / external / (Eigen / Eigen) и добавляю его в каталоги include, и получается:
фатальная ошибка C1083: не удается открыть включаемый файл: 'GL / glew.h': нет такого файла или каталога
Обратите внимание, что комментирование строк включения или добавление пути из внешней папки решило бы проблему C1083, но привело бы к тому, что объекты chai3d не распознавались, такие как cHapticDeviceHandler
. Вот часть моих журналов:
ошибка C2062: введите непредвиденную ошибку с плавающей точкой C2146
ошибка C4430: отсутствует спецификатор типа - предполагается int. Примечание: C ++ не поддерживает default-int
ошибка C2086: 'int cVector3d': переопределение см. объявление 'cVector3d'
ошибка C2143: синтаксическая ошибка: отсутствует ',' перед '&'
ошибка C2146: синтаксическая ошибка: отсутствует ';' перед идентификатором ch_computeForceSphere
ошибка C4430: отсутствует спецификатор типа - предполагается int. Примечание: C ++ не поддерживает default-int
ошибка C2086: 'int cVector3d': переопределение
ошибка C2143: синтаксическая ошибка: отсутствует ',' перед '&' ...
Буду очень благодарен за любые подсказки, как решить эту проблему.