Подтвердить что ты не робот

Get "Access denied" при попытке скомпилировать g++ из командной строки. Cygwin

Я установил все пакеты в cygwin. Я также добавил C:\cygwin\bin в свою переменную PATH. Но когда я пытаюсь скомпилировать файл С++ в командной строке, я получаю сообщение об ошибке "Access denied". Эти же команды работают в окне партии cygwin. Кто-нибудь знает, что неправильно?

Изменить: Я изменил разрешения для gcc и g++. Я больше не получаю ошибку "Access Denied", но получаю новую: "Эта версия C:\cygwin\bin\g++. Exe несовместима с версией Windows, в которой вы работаете. посмотрите, нужна ли вам x86 (32-разрядная) или 64-разрядная версия программы, а затем обратитесь к издателю программного обеспечения.".

enter image description here

enter image description here

4b9b3361

Ответ 1

Поскольку 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.

Ответ 2

Я просто удалил gcc и g++ и переименовал g++/cc-4.

Ответ 3

Если вы не мазохист, всегда используйте пакетное окно Cygwin с исполняемыми файлами Cygwin. Кроме того, если вы используете скомпилированный gcc Cygwin, вам понадобится DLL Cygwin для запуска результатов. сайт Cygwin объясняет, почему. Если вам нужны исполняемые файлы без библиотеки Cygwin, я бы исследовал MinGW.