我有一个主机系统和一个虚拟机,我正在尝试在两者中设置类似的环境。我还安装了cygwin和visual studio 10。我在构建过程中遇到了一些问题,我终于找到了我的主机和vm之间的一个区别。
在我的主机中,当我进入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... ]但在我的vm中,我没有得到任何输出。
$ cl(虚拟机为32位,主机为64位)
谁能告诉我我可能错过了什么设置?
发布于 2012-12-14 13:42:34
您应该做的第一件事是找出CygWin中不起作用的cl是什么。执行以下命令:
typeset -f cl
which cl
alias cl看看它会带来什么。如果它不是MS编译器,那就是你的问题。
除此之外,当您尝试从cmd窗口而不是CygWin bash运行cl时,了解错误环境会做些什么。
根据你的评论:
在我的虚拟机上,它是:
$ which cl
/cygdrive/c/Program Files/Microsoft Visual Studio 10.0/VC/bin/x86_amd64/cl
这对于32位虚拟机来说绝对是错误的。您正试图在不支持64位AMD编译器的系统上使用它。
您应该将路径更改为使用32位编译器。但是,我不确定你是否有64位编译器,因为所有的amd64、ia64、x86_amd64和x86_ia64似乎都指明了64位编译器。
直接在bin下的文件可能是可以的,你必须测试它以确定(可能使用dumpbin,它应该能够告诉你可执行文件的文件格式)。
https://stackoverflow.com/questions/13873321
复制相似问题