获取“访问被拒绝”当尝试使用 g++ 进行编译时从命令行。西格温

发布于 2024-10-17 22:28:01 字数 448 浏览 1 评论 0原文

我已经在cygwin中安装了所有软件包。我还将 C:\cygwin\bin 添加到我的 PATH 变量中。但是,当我尝试在命令行中编译 C++ 文件时,出现错误“访问被拒绝”。相同的命令在 cygwin 批处理窗口中工作。有谁知道出了什么问题吗?

编辑:我更改了 gcc 和 g++ 的权限。我不再收到“访问被拒绝”错误,而是收到一个新错误:“此版本的 C:\cygwin\bin\g++.exe 与您正在运行的 Windows 版本不兼容。请检查计算机的系统信息以查看您是否需要 x86(32 位)或 x64(64 位)版本的程序,然后联系软件发行商。”

在此处输入图像描述

在此输入图像描述

I have installed all packages in cygwin. I have also added C:\cygwin\bin to my PATH variable. But when I try to compile a c++ file in command line I get the error 'Access is denied'. The same commands work in the cygwin batch window. Does anyone know what's wrong?

Edit: I changed the permissions for gcc and g++. I no longer get the 'Access Denied' error, but get a new one: "This version of C:\cygwin\bin\g++.exe is not compatible with the version of Windows you're running. Check your computer's system information to see whether you need a x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher.".

enter image description here

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

情绪少女 2024-10-24 22:28:01

因为 c:\cygwin\bin\gcc.exe 不是可执行文件,它是 cygwin 符号链接。

$ file /bin/gcc
/bin/gcc: symbolic link to `/etc/alternatives/gcc'
$ file /etc/alternatives/gcc
/etc/alternatives/gcc: symbolic link to `/usr/bin/gcc-4.exe'

底层文件运行得很好。

C:\cygwin\home\Ben>gcc-4 --version
gcc-4 (GCC) 4.5.0
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Because c:\cygwin\bin\gcc.exe isn't an executable file, it's a cygwin symbolic link.

$ file /bin/gcc
/bin/gcc: symbolic link to `/etc/alternatives/gcc'
$ file /etc/alternatives/gcc
/etc/alternatives/gcc: symbolic link to `/usr/bin/gcc-4.exe'

The underlying file runs just fine.

C:\cygwin\home\Ben>gcc-4 --version
gcc-4 (GCC) 4.5.0
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
放血 2024-10-24 22:28:01

我刚刚删除了 gcc 和 g++ 并重命名为 g++/cc-4。

I just deleted gcc and g++ and renamed the g++/cc-4.

热血少△年 2024-10-24 22:28:01

除非您是受虐狂,否则请始终将 Cygwin 批处理窗口与 Cygwin 可执行文件一起使用。另外,如果您使用 Cygwin 编译的 gcc,则需要 Cygwin DLL 来运行结果。 Cygwin 网站 解释了原因。如果您需要没有 Cygwin dll 的可执行文件,我会探索 MinGW

Unless you're a masochist, always use a Cygwin batch window with Cygwin executables. Also if you're using the Cygwin compiled gcc, you'll need the Cygwin DLL to run the results. The Cygwin website explains why. If you need executables without the Cygwin dll, I'd explore MinGW.

淡水深流 2024-10-24 22:28:01

我遇到了同样的问题,因为我在 Cygwin 安装后等待重新启动。重新启动后对我有用。

I got the same issue and was because I had pending the reboot after Cygwin installation. After the reboot works for me.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文