ld.exe: не удается открыть выходной файл ...: в доступе отказано - PullRequest
45 голосов
/ 05 октября 2011

Я недавно установил CodeBlocks с mingw32 на Windows 7 Ultimate 32bit, чтобы отряхнуть свои навыки c, но эта проблема меня несколько озадачила.

Я решил отключить короткий генератор Фибоначчи, чтобы убедиться, что моя установка работала, но я столкнулся с препятствием.

Программа компилирует, связывает и тому подобное, как талисман, и я получаю соответствующий исполняемый файл, который работает как положено.

Проблемы возникают, если я пытаюсь снова скомпилировать, то получаю следующее:

c:/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.exe: cannot open output file bin\Debug\Fibonacci.exe: Permission denied

Я даже не могу редактировать разрешения сгенерированного исполняемого файла.

Я проверил обычных подозреваемых:

  • Исполняемый файл действительно не работает.
  • Путь к исполняемому файлу доступен для чтения / записи в mingw32 (в противном случае он не смог бы собрать в первую очередь)
  • Я не использую Cygwin в любой форме.

А теперь самое смешное: обычно через несколько минут все исполняемые mingw32 исполняемые файлы, отображающие это поведение «Отказано в доступе», автоматически исчезают без моего вмешательства.

Я несколько погуглил, но большинство других результатов были либо расплывчатыми, либо неприменимыми.

Интересно, есть ли какой-то параметр безопасности Windows 7, который портит мои .exe файлы, но я не настолько осведомлен о Win 7, чтобы знать, с чего начать поиск.

У кого-нибудь есть идеи?

Ответы [ 12 ]

0 голосов
/ 19 января 2019

У меня возникла похожая проблема. Bitdefender автоматически помещает в карантин каждый exe-файл, созданный в MinGW g ++. Вместо полного exe-файла я нашел файл со странным расширением 'qzquar' testAutoPtr1.exe.48352.gzquar

Когда я открывал помещенные на карантин элементы в Bitdefender, я обнаружил там свой exe-файл.

0 голосов
/ 30 мая 2018

Я получил эту ошибку при использовании редактора Atom и mingw (через пакет с именем gpp-compiler) для C ++.Закрытие открытого окна консоли устранило мою проблему.

...