2012-12-14 1 views
0

나는 호스트 시스템과 가상 시스템을 가지고 있으며 둘 다 비슷한 환경을 설정하려고합니다. Cygwin 및 Visual Studio 10도 설치되었습니다. 빌드에 문제가있어서 호스트와 VM 간의 차이점을 하나 찾았습니다. 내가 CL 입력 Cygwin에서 쉘에서 나는 다음과 같은 얻을 내 호스트에서cygwin 셸의 cl.exe

:

$ cl 
Microsoft (R) C/C++ Optimizing Compiler Version 16.00.40219.01 for x64 
Copyright (C) Microsoft Corporation. All rights reserved. 

usage: cl [ option... ] filename... [ /link linkoption... ] 

하지만 내 VM에서 나는 어떤 출력을 받고 없습니다입니다.

$ cl 

(VM는 32 비트이며, 호스트는 64 비트입니다)

누군가가 내가 놓쳤다 수도 어떤 설정 말해 줄래?

답변

0

가장 먼저해야 할 일은 작동하지 않는 CygWin에서 cl 인 것을 확인하는 것입니다. 다음 명령을 실행하십시오 :

typeset -f cl 
which cl 
alias cl 

그리고 다시 제공되는 기능을 찾으십시오. 그것이 MS 컴파일러가 아닌 다른 것이라면 그것은 당신의 문제입니다.

그 밖에도 CygWin bash이 아닌 cmd 창에서 cl을 실행하려고하면 잘못된 환경이 무엇인지 알아보십시오. 귀하의 의견을 바탕으로


:

을 내 VM에, 그것은이다
이     $ which cl
  /cygdrive/c/Program Files/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl

이 32 비트 VM에 대해 분명히 잘못된 것입니다. 지원하지 않는 시스템에서 64 비트 AMD 컴파일러를 사용하려고합니다.

32 비트 컴파일러를 사용하도록 경로를 변경해야합니다. 그러나 amd64, ia64, x86_amd64x86_ia64이 모두 64 비트 컴파일러임을 나타내는 것으로 보아 확신 할 수 없습니다.

bin 바로 아래에있는 것이 좋을 수도 있습니다. 실행 파일의 파일 형식을 알려줄 수있는 dumpbin을 사용하여 테스트해야합니다.

+0

내 호스트의 $ /cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin/amd64/cl 및 내 VM에는 $/cygdrive/c/Program Files/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl – Abi

+0

별칭이 $ alias cl을 반환했습니다. bash : 별칭 : cl : 찾을 수 없음 – Abi

+0

typeset -f cl -이 또한 아무 것도 반환하지 않습니다. – Abi