У меня есть проект C ++ в MSVS 2010 Express. Я планировал написать несколько модульных тестов для проверки этого проекта. Прямо сейчас они идут по следующим направлениям:
#include "header.h" //Header is the header for the source I want to test
void testSomeFunction()
{
//Call function (from external src, prototype in header.h)
//Save output to file
}
int main()
{
testSomeFunction();
return 0;
}
Я создаю эти исходные файлы вне моего проекта, потому что я хочу иметь возможность запускать каждый из них как отдельный исполняемый файл, но у меня возникают проблемы с получением компоновщика Microsoft для их связывания.
Это моя проблема (вывод CMD):
cl ut_Converter.cpp Converter.obj
ut_Converter.cpp
c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\xlocale(323) : warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
Microsoft (R) Incremental Linker Version 10.00.40219.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:ut_Converter.exe
ut_Converter.obj
Converter.obj
Converter.obj : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in ut_Converter.obj
Converter.obj : fatal error LNK1313: pure module detected; cannot link with ijw/native modules
Я никогда по-настоящему не использую продукты Microsoft, я знаком с инструментами GNU GCC и make, но для этого мне нужно использовать инструменты Microsoft, и я понятия не имею, как они работают.
Может быть, я собираюсь построить эти тесты глупо, но это лучший способ, о котором я могу думать прямо сейчас.
Вот что я хочу сделать:
Как мне это сделать? (Я предполагаю, что есть некоторые настройки, которые мне нужно установить, чтобы все было совместимо, но я понятия не имею, что это такое или как мне их настроить)
Дополнительно: я знаю, что здесь упоминается уровень отладки, но я готов поспорить, что будут другие несовместимые настройки. Есть ли способ узнать, какие настройки есть в программе, чтобы я мог передать их в cl.exe при запуске?
Редактировать: Когда я говорю командную строку, я имею в виду тот, который поставляется с Visual Studio со всеми настройками переменных среды.
Вы пытались зайти в Программы / Microsoft Visual … / … Инструменты / … Командная строка и запустить из того окна консоли DOS, в котором настроены переменные среды?