在Windows中更改gcc和g ++的权限

时间:2011-08-22 07:31:43

标签: gcc cygwin

我在cygwin中安装了所有软件包。我还在我的PATH变量中添加了C:\ cygwin \ bin。但是当我尝试在命令行中编译c ++文件时,我收到错误“访问被拒绝”。相同的命令在cygwin批处理窗口中起作用。

我有64位版本的Windows,并安装了所有必需的cygwin包。

更新:正在制作.exe文件。我可以直接运行它。

2 个答案:

答案 0 :(得分:3)

Cygwin中的

/bin/gcc是指向gcc-3gcc-4的符号链接。同样适用于g++。非Cygwin程序通常不能读取Cygwin符号链接,这就是为什么运行gcc在Cygwin bash中工作但不在Windows命令提示符(即cmd.exe)中工作的原因。因此,您需要直接从那里调用gcc-3gcc-4

(有些误导性的“访问被拒绝”消息是因为Cygwin符号链接由设置了系统属性的文件表示,但是任何人都可以读取它们。)

答案 1 :(得分:1)

这是预期的行为:Cygwin在Windows之上提供类似POSIX的环境,它需要一些设置(Cygwin Bash窗口)。

如果您需要原生Windows GCC,则需要MinGW(-w64)。它们在没有Cygwin的情况下运行,并以Win32 API(msvcrt.dll)为目标。