Windows 7에서 gcc.exe 실행 시 Access denied 오류
미리 말씀드리면, 저는 cygwin이나 gcc에 대한 경험이 거의 없습니다. 단지, 필요할 때 책에 소개된 대로 따라하는 정도의 감각만 가지고 있다고 해야겠지요. ^^
마침, cygwin을 구성하고 gcc를 실행해 볼 일이 생겼는데, 명령행에서 다음과 같은 오류만 발생했습니다.
E:\OS\dev\cygwin\bin>gcc
Access is denied.
검색을 해보니, 다음과 같은 글이 나옵니다.
GCC - Access denied
; http://omgili.com/mailinglist/cygwin/cygwin/com/m2t961f6df41004191807y75bc02cfiabd7f684a8d5f8camailgmailcom.html
아하... symbolic link로 연결된 파일이라고 하는군요. 저도 직접 해보니 동일하게 gcc-4.exe로 연결된 것을 확인할 수 있었습니다.
E:\OS\dev\cygwin\bin>file gcc2.exe
gcc2.exe: symbolic link to `/etc/alternatives/gcc'
E:\OS\dev\cygwin\bin>file /etc/alternatives/gcc
/etc/alternatives/gcc: symbolic link to `/usr/bin/gcc-4.exe'
실제로 hexa 에디터로 보니까, gcc.exe는 다음과 같이 껍데기에 불과하더군요.
음... 그냥 gcc-4.exe로 실행해야 되는 걸까요?
아닙니다. 윈도우에서도 동일하게 ^^ symbolic link로 만들면 됩니다. (만약을 대비해서) 기존의 gcc.exe를 gcc2.exe로 이름 변경하고 다음과 같이 mklink를 이용해서 symbolic link를 생성해 줄 수 있습니다.
E:\OS\dev\cygwin\bin>mklink gcc.exe gcc-4.exe
symbolic link created for gcc.exe <<===>> gcc-4.exe
이렇게 하고 나면, 윈도우 명령행에서도 gcc.exe가 잘 실행이 되고, Cygwin bash shell에서도 정상적으로 실행이 됩니다. ^^
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]