2014-12-02 14 views
14

Ho installato Visual Studio 2013 a 32 bit sul mio Windows 8.1 a 64 bit. Ho 5 prompt dei comandi:Qual è la differenza tra x64 Native Tools Command Prompt e x64 Cross Tools Command Prompt?

  1. Developer Prompt dei comandi per VS2013
  2. VS2013 sbarra orizzontale Prompt dei comandi strumenti
  3. VS2013 x64 Croce Prompt dei comandi strumenti
  4. VS2013 x64 Strumenti Native Command Prompt
  5. VS2013 x86 nativo Strumenti Comando Prompt

Non capisco la differenza tra:

  • sviluppatore del prompt dei comandi per VS2013 Versus VS2013 x86 strumenti nativi Prompt dei comandi
  • VS2013 x64 Croce Prompt dei comandi strumenti Versus VS2013 x64 Strumenti Native Command Prompt

risposta

15

Un croce compilatore è un compilatore che esegue su una piattaforma ma genera codice per un'altra. La tua macchina ha due compilatori in grado di generare codice x64. Uno è il cross-compilatore a 32 bit nella directory vc/bin/amd64_x86, l'altro è un compilatore nativo a 64 bit nella directory vc/bin/amd64. Entrambi generano lo stesso identico codice macchina x64.

È necessario utilizzare il cross-compiler solo quando si dispone di un sistema operativo a 32 bit. Eseguire il debug e testare il programma che genera è sgradevole, è necessario un altro computer e utilizzare il debugger remoto. Va bene per un server di build, forse. Se hai la versione a 64 bit di Windows, allora una scelta va bene, ma preferisci la selezione "x64 nativo". Il compilatore e il linker sono leggermente più veloci e possono gestire programmi molto più grandi.

Questo spiega anche perché si ha solo la selezione cross compilator per ARM, non si dispone di un processore ARM nella macchina dev.

+0

Ok, quindi VS2013 x64 Il prompt dei comandi di Cross Tools è un compilatore a 32 bit? che può creare programmi nativi a 64 bit. –

+0

Quindi, ho due opzioni e potrei usare un piccolo chiarimento. Con VS2015, ho x64 x86 Cross Tools e x86 x64 Cross tools. Quale devo usare per compilare un codice a 32 bit su una macchina a 64 bit? –

+1

C'è un solo compilatore che genera codice x86, memorizzato in vc/bin. Non un cross-compilatore, funziona bene su un sistema operativo a 64-bit grazie all'emulatore wow64. –

Problemi correlati