ld.exe: cannot open output file ... : Permission denied

218,600

Solution 1

I had exactly the same problem right after switching off some (in my opinion unneccessary) Windows services. It turned out that when I switched ON again the "Application Experience" everything resumed working fine.

May be you simply have to turn on this service? To switch ON Application Experience:

  1. Click the Windows start buttonn.

  2. In the box labeled "Search programs and files" type services.msc and click the search button. A new window with title "Services" opens.

  3. Right click on "Application Experience" line and select "Properties" from popup menu.

  4. Change Startup type to "Automatic (delayed start)".

  5. Restart computer.

Application Experiences should prevent the problem in the future.

Solution 2

Your program is still running. You have to kill it by closing the command line window. If you press control alt delete, task manager, process`s (kill the ones that match your filename).

Solution 3

If you think the executable is locked by a process, try Process Explorer from SysInternals. In the File/handle, enter Fibonacci.exe and you should see who holds the file.

If it is not enough, you can use Process Monitor (from SysInternals, again) to follow the activity of all processes on your system on Fibonacci.exe. With a little bit of analysis (call stacks), you'll may find out why the access to the file is denied and what make it disappear.

Solution 4

Problem Cause : The process of the current program is still running without interuption. (This is the reason why you haven't got this issue after a restart)

The fix is simple : Go to cmd and type the command taskkill -im process_name.exe -f

Eg:

 taskkill -im demo.exe -f

here,

demo - is my program name

Solution 5

The Best solution is go to console in eclipse IDE and click the red button to terminate the program. You will see the your program is running and output can be seen there. :) !!

Share:
218,600
gzzzur
Author by

gzzzur

This space intentionally left blank.

Updated on May 25, 2021

Comments

  • gzzzur
    gzzzur almost 3 years

    I recently installed CodeBlocks with mingw32 on Windows 7 Ultimate 32bit in order to dust off my c skills, but this problem has me somewhat stumped.

    I decided to fire off a short Fibonacci generator to make sure my setup was working, but I ran into a hurdle.

    The program compiles, links and whatnot like a charm and I get a corresponding executable which runs as expected.

    The problems occur if I try to compile again, then I get the following:

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

    I can't even edit the permissions of the generated executable.

    I've checked the usual suspects:

    • Executable is verily not running.
    • Path to executable is read/writable to mingw32 (otherwise it wouldn't be able to build in the first place)
    • I'm not running cygwin in any shape or form.

    And now for the funny bit: Usually after a few minutes, any executables generated by mingw32 which are displaying this Access Denied behaviour will automatically vanish without any intervention from me.

    I've googled this somewhat, but most of the other results were either vague or inapplicable.

    I wonder whether there is some Windows 7 security setting playing havoc with my .exe's, but I'm not that knowledgeable about Win 7 as to know where to begin searching.

    Any one have any ideas?

  • gzzzur
    gzzzur over 12 years
    I picked your answer because it looks like the most plausible solution given my problem statement. I wasn't able to try it out though, since the machine I had it running on crashed. Since I've now decided to go with linux it kind of makes this a moot point for me.
  • Cimbali
    Cimbali over 11 years
    This seems to be the actually good solution to this really nasty problem. I've seen it unsolved on some forum threads and the like.
  • 5agado
    5agado about 10 years
    Worked also for me, still I don't understand what's going on.
  • Philip Rego
    Philip Rego over 9 years
    Great answer came back after restart to +1
  • Robin Bruegger
    Robin Bruegger about 9 years
    Worked for me as well, cannot explain it.
  • Seppo Enarvi
    Seppo Enarvi about 9 years
    I'm trying to build a software package with MSYS2/ming32 and encounter the same problem. I get the ld error when the configure script is trying to compile a test program. The "Application Experience" magic didn't work.
  • Seppo Enarvi
    Seppo Enarvi about 9 years
    Thanks, I was able to fix the same problem by turning off File System Auto-Protect from Symantec Endpoint Protection.
  • Freak
    Freak almost 8 years
    Worked even before restart on windows 7. Dont know why but it worked (;
  • shadrack Mwangi
    shadrack Mwangi over 6 years
    This is the best solution , everyone using eclipse should use this .
  • Chandan
    Chandan almost 6 years
    [SOLVED]In my case it was the anti-virus that was blocking it. I opened the antivirus program and it had logged an event that ld.exe was blocked. If you just add the exception to ld.exe, this error goes away, no need to disable Antivirus.
  • Pro Q
    Pro Q almost 6 years
    In Windows 10, Application Experience can be found by:1. Go to the search in start menu and type task scheduler and select it from the list of results. 2. In there, please select the Task scheduler library in the left pane. 3. There select Microsoft. 4. In Microsoft, please select Windows. 5. In the Windows, please select the Application Experience. (From this form)
  • Pro Q
    Pro Q almost 6 years
    For me, Cortana = search. However, once I get to that screen I'm not sure what to do to restart "Application Experience".