Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Problema Release
Forum - C/C++ - Problema Release

Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 21:26
Mercoledì, 25/11/2009
Ho un piccolo problema: alla compilazione in modalità debug funziona tutto perfettamente, ma alla compilazione in modalità release mi da questo bellissimo errore! ( le righe in grassetto )

Codice sorgente - presumibilmente VB.NET

  1. 1>------ Inizio compilazione: Progetto: TxFilterController, Configurazione: Release Win32 ------
  2. 1>Compilazione in corso...
  3. [b] 1>cl : warning della riga di comando D9035 : l'opzione 'clr:oldsyntax' è obsoleta e verrà rimossa in una futura versione [/b]
  4. [b] 1>cl : error della riga di comando D8016 : le opzioni della riga di comando '/MT' e '/clr:oldsyntax' non sono compatibili[/b]
  5. 1>Il log di compilazione è stato salvato in 'file://f:\Desktop 24 nov\TxFilterController\Release\BuildLog.htm'
  6. 1>TxFilterController - 1 errore/i, 1 avviso/i
  7. ========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========



Vorrei avere una informazione: che differenza c'è tra release e debug?
Quando uso la dll che riesco ad ottenere via debug e la includo in un progetto vb.net quando lo eseguo in modalità debug tutto bene, ma in release..... c'è qualche collegamento fra queste due cose?

Ultima modifica effettuata da NewAge il 25/11/2009 alle 21:27
PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 21:44
Mercoledì, 25/11/2009
Testo quotato

Postato originariamente da NewAge:
le opzioni della riga di comando '/MT' e '/clr:oldsyntax' non sono compatibili



beh il problema mi sebra ovvio, controlla le opzioni del linker in proprietà progetto, sicuramente sono checkate due cose incompatibili...

PM Quote
Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 13:43
Giovedì, 26/11/2009
Il problema è che se tolgo /clr poi mi restituisce questo errore:

Codice sorgente - presumibilmente C/C++

  1. 1>f:\desktop 24 nov\txfiltercontroller\stdafx.h(7) : fatal error C1190: il codice gestito interessato richiede un'opzione '/clr'




la riga 7 è:

Codice sorgente - presumibilmente Plain Text

  1. #using <mscorlib.dll>



PM Quote
Avatar
NewAge (Normal User)
Pro


Messaggi: 153
Iscritto: 23/08/2009

Segnala al moderatore
Postato alle 14:03
Giovedì, 26/11/2009
Ho risolto, /mt significa multi thread, ma il mio programma essendo una dll dovevo usare /md, multi thread dll

poi devo attivare clr:oldsintax ma durante la compilazione mi dice che la funzione verà eliminata alla prissima versione, ma continuerà a funzionare comunque il mio programma, vero?

PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 14:11
Giovedì, 26/11/2009
Testo quotato

Postato originariamente da NewAge:

Ho risolto, /mt significa multi thread, ma il mio programma essendo una dll dovevo usare /md, multi thread dll

poi devo attivare clr:oldsintax ma durante la compilazione mi dice che la funzione verà eliminata alla prissima versione, ma continuerà a funzionare comunque il mio programma, vero?



sicuramente verrà eliminata in una prossima versione vuol dire che quello switch è obsoleto, cioè inutile o superfluo o soppiantato da altri switch... devi leggerti accuratamente la documentazione dello switch sull'msdn :)

PM Quote