Vinculando-se à biblioteca no release e .exe em falhas de depuração no Visual Studio

Estou usando o Visual C ++ 2008 SP1. Eu tenho um aplicativo que é compilado no modo de depuração, mas links contra uma biblioteca no modo de lançamento.

Estou a sofrer um crash no arranque da aplicação. Para diminuir o problema, criei uma solução simples com dois projetos:

lib_release (gera um .lib, no modo de liberação)exec_using_lib_release (genereates um .exe, no modo de depuração)

O projeto 'lib_release' é simples o suficiente para ter uma classe simples:

//Foo.h
#include <vector>
class Foo {
  std::vector<int> v;
  public:
  void doSomething();
};
//Foo.cpp
#include "Foo.h"
void Foo::doSomething() {}

O projeto 'exec_using_lib_release' é simples assim:

//main.cpp
#include "Foo.h"
int main() {
   Foo foo;
   foo.doSomething();
   return 0;
}

E cai, é o mesmo problema relatado porComo você cria um .exe depuração (MSVCRTD.lib) contra um lançamento construído lib (MSVCRT.lib)?, mas sua resposta não funcionou para mim.

Eu recebo os mesmos avisos de vinculador, tentei os mesmos passos, mas nenhum funcionou. Tem algo que estou perdendo?

EDITAR:

No lib_release (que cria uma biblioteca no modo de liberação), estou usandoMulti-Threaded (/ MT), e no exec_using_lib_release, estou usandoDepuração Multi-Threaded (/ MTd). Eu acho que essa é a maneira esperada de fazer isso, já que eu quero que o .lib seja criado sem informações de depuração. Eu li o documento emBiblioteca do Tempo de Execução do MSDN e essas são as configurações de vinculação contra o CRT de maneira estática.

Eu não tenho 'Common Language Runtime Support' também.

questionAnswers(4)

yourAnswerToTheQuestion