C공부를 다시 해야할 것 같아서 IDE를 설치해야할 일이 생겼습니다. Visual Studio로만 C/C++을 해온 저는 유닉스 환경에서 해야해서 다른 IDE를 찾고 있었습니다. 이클립스를 다운 받을 때 C/C++용도 있었던 것 같았습니다.

그래서 이클립스 홈페이지가니 있더군요. 여기저기 수소문 끝에 유닉스환경에서 할 수 있는 C프로그래밍을 윈도우에서도 구축할 수 있더군요. 이런게 있을 줄이야...

우선 이클립스를 받습니다.
http://www.eclipse.org/downloads/

여기 사이트를 들어가시면 Eclipse IDE for C/C++ Developers 라고 있습니다.
운영체제에 맞는 것을 받으시구요. Linux와 MacOS도 지원하는군요!

받은다음에 적당한 폴더에 압축을 풉니다.

자 그다음 gcc, make 등을 구해야하는데 두가지 종류가 있더군요.(리눅스는 안해줘도 될꺼같군요)
Cygwin랑 MinGW 가 있는데 MinGW로 해보겠습니다. (Cygwin은 이걸로 만든 실행파일을 실행할때 dll파일이 필요하다고 하더군요)

이곳에서 MinGW를 받습니다.
http://www.mingw.org/download.shtml

받은 뒤 실행하면 다음신공하다보면 뭐 설치할 꺼냐고 묻는데 전 잘몰라서 c관련된 컴파일러는 다 설치했습니다. make랑 g++랑 objective c 컴파일러같은거 이거 3개 체크하고 설치했습니다.

그런다음에 패스를 잡아줘야합니다. gcc랑 make 등의 파일이 어디서든 실행이 되어야합니다.

패스잡는것은 비스타기준입니다.
컴퓨터(오른쪽버튼누른뒤 속성) -> 고급시스템설정 -> 고급탭에서 환경변수 클릭!
XP에서도 비슷하게 속성누르면 있을껍니다.

집에 알집이 깔려있다면 위에 알집이 PATH로 잡혀있을껍니다. 요고이 지워줍니다. 그리고 이스트소프트를 막 욕합시다.
시스템변수에 Path를 찾습니다. 그다음 MinGW/bin폴더를 패스를 잡아줍니다.
ex) ......;C:\MinGW\bin //c:\MinGW는 MinGW설치폴더

패스가 제대로 잡혔는지 보려면 시작 -> cmd를 실행해서 gcc를 실행해봅시다.
gcc: no input files라고 나오면 잘 잡힌겁니다.

그리고 이클립스에서는 make.exe파일을 make할 때 쓰는데 MinGW는 mingw32-make.exe파일이 make파일입니다. 그래서 이름을 변경하던가 이클립스 설정을 변경하던가 합니다.

첫번째 방법은 mingw32-make.exe파일을 똑같은 폴더에 복사해서 새이름으로 make로 저장합니다.

두번째 방법은 이클립스에서 변경하는 방법입니다.
Window -> Preferences -> C/C++ -> New CDT project wizard -> Makefile project를 보면

사용자 삽입 이미지

중간에 빨간상자부분이 있는데 저 부분을 mingw실행파일에 맞게 바꿔주면 됩니다.

둘중에 하나만 하면 됩니다.

이제 설정은 다 됐습니다. 언제나 그렇듯이 설정이 끝나면 헬로우 월드를 찍어봅시다-_-;
사용자 삽입 이미지

Toolchain은 MinGW로 선택을 합시다. 프로젝트이름은 HelloWorld로...-_-;

HelloWorld프로젝트이름에 오른쪽버튼을 눌러서 New -> Source File 해서 HelloWorld.c 파일을 생성합시다.

HelloWorld.c (Language : c)
#include <stdio.h>

int main(void)
{
    printf("Hello World!");
   
    return 0;
}
 

저렇게 적읍시다. 아 그리고 마지막 } 이거다음에 한칸 띄워주고 그다음칸을 한칸더 생성해줍시다. 그냥 }스페이스바하고 엔터 하고 저장합시다. 안그러면 no newline at end of file 라는 워링이 뜹니다-_-;
검색해보니 뭐 무슨 어쩌구 설명을 하는데 잘모르겠습니다-_-;

컴파일 단축키로 컴파일해봅시다. 저장하고 Ctrl + B를 누릅시다.
컴파일이 완료되면 run단축키인 Ctrl + F11을 누릅시다.

그러면 아래에 Console탭에 Hello World! 라고 뜰껍니다.
컴파일할 때 object파일인 *.o도 만들고 윈도우실행파일인 *.exe도 만들어줍니다.
 
Posted by 머드초보

댓글을 달아 주세요

  1. 새우초밥 2007.10.03 17:18  댓글주소  수정/삭제  댓글쓰기

    관련자료 감사합니다..^^

  2. docyacc 2007.10.10 18:31  댓글주소  수정/삭제  댓글쓰기

    저는 똑같이 했는데도
    마지막에 ctrl + f11하면
    lanch failed no bineries
    라고 뜨네요 ㅠㅠ

  3. docyacc 2007.10.10 18:39  댓글주소  수정/삭제  댓글쓰기

    아.. 빌드도 제대로 되지 않았네요..

    **** Build of configuration Debug for project hello ****

    **** Internal Builder is used for build ****
    gcc -O0 -g3 -Wall -c -fmessage-length=0 -ohello.o ..\hello.c
    gcc: installation problem, cannot exec `cc1': No such file or directory
    Build error occurred, build is stopped
    Time consumed: 94 ms.

    뭐가 잘못된 걸까요 -_ㅠ

    • BlogIcon 머드초보 2007.10.10 20:54  댓글주소  수정/삭제

      음 제가 보기에는 gcc가 설치가 안된듯 싶습니다. MINGW에서 g++컴파일러를 체크하셨는지요? 아니면 Path가 안잡혀있던가 그런거 같은데요. gcc를 실행하지 못하는 듯의 에러로 보입니다^^

  4. BlogIcon 셜로콤즈 2008.04.22 19:11  댓글주소  수정/삭제  댓글쓰기

    덕분에 잘 설치했습니다. 감사합니다 ^^

    • 머드초보 2008.04.23 08:21  댓글주소  수정/삭제

      mingw말고 cygwin도 있는데 이게 더 좋은 것 같아요.
      둘의 차이점이 좀 있다고 하는데^^
      설치 방법은 동일해요 ^^
      방문해주셔서 감사해요 ^^

      헉....트랙백 따라가니 cygwin으로 하셨네요 ^^

  5. BlogIcon 도막 2008.08.07 16:04  댓글주소  수정/삭제  댓글쓰기

    안녕하세요!! 이클립스로 c언어 사용해 보려고 검색하다가 들렀습니다~
    유용한 정보가 됬습니다. 감사합니다~

    근데 디버깅 하는 법도 좀 알려주시면 안될까요 ^^;;

    부탁드립니다 ㅠㅠ

    • 머드초보 2008.08.07 22:44  댓글주소  수정/삭제

      우선 gdb를 설치하셔야하는데 그것도 같이 설치하셨나요?
      mingw로는 안해보고 cygwin으로는 해봤거든요.
      cygwin에서 gcc랑 gdb, make 등등 컴파일에 필요한 것 설치하시구요.
      http://mudchobo.tomeii.com/tt/284
      디버깅할 때 위처럼 문제점이 발생하면 위처럼 해결해주면 돼요 ^^

  6. KG 2009.11.30 03:08  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 프로그래밍을 이제막 배우기시작한 초보입니다.
    제가 환경이 MAC이라서 그런데 컴파일 프로그램은 어떤걸 써야하나요?
    그리고 디버깅은 어떻게 하는지 갑자기 배우려니 어렵네요..^^

    • 머드초보 2009.11.30 18:38  댓글주소  수정/삭제

      아...제가 맥은 잘 몰라서 ㅠㅠ
      맥이라면 커널은 Unix계열이니 gcc가 있지 않을까 의심해봅니다-_-

  7. HC 2010.01.22 12:08  댓글주소  수정/삭제  댓글쓰기

    안녕하세요~
    항상 비주얼로만 C 작업을 하다가
    이제 막 이클립스를 이용하여 작업할려는 초보자입니다 ㅠ
    머드초보님 말씀대로 따라서 했는데..
    빌드가 잘 안되네요..
    Description Resource Path Location Type
    undefined reference to `WinMain@16' Hello line 0, external location: mingw/lib/libmingw32.a(main.o):main.c: C/C++ Problem
    이유가 먼가요 ㅠ?

    • 머드초보 2010.01.22 12:24  댓글주소  수정/삭제

      음...C작업엔 Visual Studio가 더 좋지 않나요?-_-
      근데 아래와 같은 에러는 저도 안해봐서 모르겠네요.
      에러 내용을 보내 윈도우프로그래밍을 하시려고 한 것 같은데, 저도 안해봐서 잘 ㅠㅠ
      라이브러리를 못찾는 것 같기도 하고....
      make파일을 조쿰 보시면....ㅠㅠ

  8. HC 2010.01.22 13:12  댓글주소  수정/삭제  댓글쓰기

    와우 빠른 답변 ㅎㅎ
    그런가요..
    그냥 Hello 출력할려했는데..
    똑같이 했는데 왜 이럴까나 ㅠ
    아 저는 학생인턴인데.. 이클립스로 작업하라 하더라고요 ` ㅅ`ㅋ
    막막하네요 ㅠ

    • 머드초보 2010.01.23 01:21  댓글주소  수정/삭제

      그냥 Hello World출력하는 것이라면 위처럼 하면 될텐데 ㅠㅠ
      MinGW말고, cygwin이라는 것도 있는데, 이걸로도 한번 해보세요^^

  9. 크렘 2010.01.29 00:02  댓글주소  수정/삭제  댓글쓰기

    **** Internal Builder is used for build ****
    gcc -oHelloWorld.exe HelloWorld.o
    /mingw/lib/libmingw32.a(main.o):main.c:(.text+0xd2): undefined reference to `WinMain@16'
    collect2: ld returned 1 exit status
    Build error occurred, build is stopped
    Time consumed: 140 ms.
    이거 도대체 왜뜰까요 ㅜㅜ 패스도 제대로 잡았고 cmd 에서 gcc g++도 다 잘 되는데 말이죠..
    도와주세요 ㅜㅜ

  10. 크렘 2010.01.29 01:19  댓글주소  수정/삭제  댓글쓰기

    다시 하니깐 안되네요 -ㅁ- 지맘대로 컴파일 오류난담에 껏다 켜면 되고 다시 새로만들어서 그상태로 컴파일하면 또 안되고 ....
    충격 ... 저장 -> 빌드 -> 실행 순으로 해야하는 군요
    3개중 하나라도 빼먹으면 안되는 ..
    저장을 안하고 있었던 ....

    • 머드초보 2010.01.31 19:35  댓글주소  수정/삭제

      MinGW말고 Cygwin으로도 한번 해보시겠어요?
      MinGW와 동일한 컴파일러입니다.
      unix용 어플을 windows용으로 변환한 것으로 알고 있습니다^^

  11. 나그네 2011.01.12 00:32  댓글주소  수정/삭제  댓글쓰기

    C++은 안되네요..
    프로젝트 만드는거랑 컴파일해서 exe만든는것까진 되는데 결과가 안뜨고 컴파일하여 생긴 exe를 직접 실행하면 dll 파일 하나가 없다고 나오네요.

  12. sgkim34 2013.08.27 17:44  댓글주소  수정/삭제  댓글쓰기

    감사합니다. 컴파일러 설치 후 환경변수와 make 모두 적용해야 되는군요. 도움 많이 되었습니다.