0

我有一个主机系统和一个虚拟机,我正在尝试在两者中设置类似的环境。我还安装了 cygwin 和 Visual Studio 10。我在构建中遇到了问题,最终我设法找到了我的主机和虚拟机之间的一个区别。

在我的主机中,当我在 cygwin shell 中输入 cl 时,我得到以下信息:

$ 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... ]

但是在我的虚拟机中,我没有得到任何输出。

$ cl

(VM 是 32 位,主机是 64 位)

有人能告诉我我可能错过了什么设置吗?

4

1 回答 1

0

cl 您应该做的第一件事是找出CygWin 中哪些地方不工作。执行命令:

typeset -f cl
which cl
alias cl

并找出它回来了。如果它不是 MS 编译器,那是你的问题。

cl除此之外,当您尝试从cmd窗口而不是 CygWin运行时,找出错误环境的作用bash


根据您的评论:

在我的虚拟机上,它是:
  $ which cl
  /cygdrive/c/Program Files/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl

对于 32 位 VM,这绝对是错误的。您正试图在不支持它的系统上使用 64 位 AMD 编译器。

您应该更改路径以使用 32 位编译器。但是,我不确定您是否拥有一个,因为所有,amd64和似乎都表示 64 位编译器。ia64x86_amd64x86_ia64

直接下的bin可能没问题,您必须对其进行测试才能确定(可能dumpbin应该能够告诉您可执行文件的文件格式)。

于 2012-12-14T05:42:34.303 回答