Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. 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: 2763
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...


Ingegnere Informatico
https://ldlagency.it
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: 2763
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 :)


Ingegnere Informatico
https://ldlagency.it
PM Quote