Связывание с библиотекой в выпуске и .exe в случае отладки в Visual Studio
м с использованием Visual C ++ 2008 SP1. У меня есть приложение, которое скомпилировано в режиме отладки, но ссылки на библиотеку в режиме выпуска.
я получаю сбой при запуске приложения. Чтобы уменьшить проблему, я создал простое решение с двумя проектами:
lib_release (генерирует .lib в режиме релиза)exec_using_lib_release (генерирует .exe, в режиме отладки)'lib_release» Проект достаточно прост, чтобы иметь простой класс:
//Foo.h
#include
class Foo {
std::vector v;
public:
void doSomething();
};
//Foo.cpp
#include "Foo.h"
void Foo::doSomething() {}
'exec_using_lib_release» Проект прост, как это:
//main.cpp
#include "Foo.h"
int main() {
Foo foo;
foo.doSomething();
return 0;
}
И это терпит крах, это 'та же проблема, о которой сообщаетКак создать отладочную версию .exe (MSVCRTD.lib) для библиотеки, выпущенной на основе релиза (MSVCRT.lib)?, но его ответ нея не работаю
Я получаю те же предупреждения компоновщика, я пробовал те же шаги, но ни один не работал. Есть ли что-то, что ям отсутствует?
РЕДАКТИРОВАТЬ:
На lib_release (который создает библиотеку в режиме выпуска), я 'м используюМногопоточный (/ MT)и на exec_using_lib_release ям используюМногопоточная отладка (/ MTd), Я думаю, что это ожидаемый способ сделать это, так как я хочу, чтобы .lib создавался без отладочной информации. Я читаю документ наБиблиотека времени выполнения MSDN и это настройки связывания с ЭЛТ статическим способом.
Я нене иметьCommon Language Runtime Support ' или.