Domanda

Quindi ho una soluzione Visual Studio 2005 che contiene un progetto C # (driver di test - crea exe) e 7 progetti C ++ (dll's).

Questa soluzione va bene fino a questo punto.

Devo DevPartner Studio 8.2 installato. Sto cercando di generare una copertura di test sull'intera soluzione che mi richiede di strumentare il codice c ++ nativo durante le build. quando attivo questa opzione DevPartner, la build produce errori di linker.

Qualcuno ha esperienza con questo?

Ad esempio:

Error   25  error LNK2001: unresolved external symbol "public: __thiscall IntLong::IntLong(class BufObjBase *,int,int,unsigned char,wchar_t const *,bool)" (??0IntLong@@QAE@PAVBufObjBase@@HHEPB_W_N@Z) X.obj
È stato utile?

Soluzione

Un collega l'ha capito. Nel caso in cui qualcun altro incontri questo problema:

Esiste una catena di dipendenze nel progetto tra DLL, altre DLL e librerie. In una build normale, Visual Studio è abbastanza intelligente da trovare le librerie. Con DevPartner che inserisce la sua strumentazione, non lo è.

Assicurati che tutte le dipendenze aggiuntive siano esplicitamente specificate in (proprietà sul progetto che ottiene l'errore di collegamento) - > Linker - > input - > Dipendenze aggiuntive.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top