Как запустить cl.exe из cmd, используя те же настройки, что и в MSVS?

У меня есть проект 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, и я понятия не имею, как они работают.

Может быть, я собираюсь построить эти тесты глупо, но это лучший способ, о котором я могу думать прямо сейчас.

Вот что я хочу сделать:

  1. Скомпилируйте исходные файлы в моем проекте в объектные файлы
  2. Скомпилируйте мои тестовые файлы в объектные файлы
  3. Свяжите файл тестового объекта с соответствующими объектными файлами проекта, чтобы создать исполняемый файл теста

Как мне это сделать? (Я предполагаю, что есть некоторые настройки, которые мне нужно установить, чтобы все было совместимо, но я понятия не имею, что это такое или как мне их настроить)

Дополнительно: я знаю, что здесь упоминается уровень отладки, но я готов поспорить, что будут другие несовместимые настройки. Есть ли способ узнать, какие настройки есть в программе, чтобы я мог передать их в cl.exe при запуске?

Редактировать: Когда я говорю командную строку, я имею в виду тот, который поставляется с Visual Studio со всеми настройками переменных среды.

0

Решение

Вы пытались зайти в Программы / Microsoft Visual … / … Инструменты / … Командная строка и запустить из того окна консоли DOS, в котором настроены переменные среды?

2

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


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector