Связывание проблем с TinyXml++ и Visual C++ Express Edition 2008

Я пытаюсь использовать TinyXml++ в своем проекте, и я успешно проверил его в небольшой программе ранее. Недавно я решил использовать его для чтения файла конфигурации в моем текущем проекте, и хотя код скомпилирован, я получил массу ошибок компоновщика (в основном это неразрешенные внешние символы). Я прочитал в какой-то ветке форума, описывающей похожую проблему, что мне пришлось использовать ту же библиотеку времени выполнения, с которой была скомпилирована TinyXml++. Я открыл сопутствующий проект Visual C++ 2008 и увидел, что он использует многопоточную отладку (/MTd).

Теперь я протестировал все библиотеки времени выполнения с и без #define TINYXML_USE_TICPP перед тем, как включить "ticpp.h". Я получил от 9 до 80 ошибок компоновщика (именно поэтому я изначально не хотел публиковать их все, но буду, если вы захотите их увидеть).

Я скопировал статическую библиотеку ticppd.lib (находится в папке загрузки) в каталог моего проекта и связал ее с помощью Linker->Input->Add Add Dependencies. Я включил путь к каталогу к источнику TinyXml++ в C/C++->General->Add add Include Directories. Что я делаю неправильно?:(

1 ответ

TinyXML - это библиотека с полным доступным исходным кодом; вам не нужно включать.lib. Вы можете разделить TinyXML на отдельный проект и пометить свой проект как зависящий от него, что позволит вам скомпилировать оба проекта с согласованными настройками потоков и отладки, но самый простой способ заставить его работать, это просто добавить TinyXML .cpp. и.h файлы (только не тестовые) для вашего проекта и компиляции.

Другие вопросы по тегам