이곳은 Dev-C++ 사용자들의 정보 교류를 위한 페이지입니다.
Dev-C++은 Win32 용 gcc를 기반으로 하는 강력한 C/C++ 통합 개발 환경입니다. GpGiki 안에서는 편한 링크를 위해 DevCpp 라고 지칭합니다.
Dev-C++는 8년전 4.9.9.2 버전으로 개발이 중단된 상태입니다. 다른사람들이 이어받아서 wxWidget(wx위젯)을 더하여 wxDev-C++ 란 이름으로 지금까지 계속 개발하고 있습니다. http://www.gpgstudy.com/forum/viewtopic.php?topic=18732 를 참고하시길. - kastepo1_20080319
4.9.9.2 버전이 공개 되었습니다. 아직 베타 버전이라 많이 불안정합니다. 저는 이번 버전부터 사용해서 이전 버전과의 차이점은 명확히 알지 못하지만 아직 프로젝트 진행시 심각할지도 모를 오류가 존재 합니다. 하지만 이런 위험요소를 날려버릴만큼 유용하고 멋있는 툴이라고 생각합니다.
nahu5 08-16-05
새 한국어 파일 나왔습니다. http://kldp.net/frs/?group_id=134&release_id=1455
8을 건너뛰고 9가 나왔습니다. 주로 버그 수정인 것 같습니다. 코드 완성 기능이 나아졌다고 하는데 더 느려진 것 같기도 합니다. 시작 화면이 변했습니다. 실행 파일 아이콘도 변했구요. 언어 파일에 추가된 것은 없습니다. 따라서 아래 4.9.8.7 항목에서 언급한 한국어 파일을 그대로 사용해도 됩니다.
--류광, 2004-05-13
이미 웹 업데이트로 받으셨겠지만.. 얼마전 4.9.8.7이 나왔습니다. 가장 눈에 띄는 것은... 컴파일러 옵션의 어셈블리 코드 생성 부분에 대상 머신 지정과 CPU 특수 기능(MMX, SSE 등)을 활성화시키는 옵션들이 추가되었다는 점입니다.
새로 추가된 UI 메시지들을 반영한 한국어 파일을 devckorcomm CVS에 올려두었습니다. 번역까지 한 것은 아니고 그냥 <ERR>를 피하는 정도입니다. 아래 '관련 링크'에 링크가 있습니다.
--류광, 2004-03-16
버전 4.9.8.x에서 컴파일러 창에 나오는 메시지가 잘리는 경우 컴파일러 옵션에 -fmessage-length=0를 추가하면 된다. 출처: http://sourceforge.net/forum/forum.php?thread_id=924590&forum_id=48211
한국어 언어 파일 갱신 작업을 한국 Dev-C++ 공동체의 CVS에서 진행하고 있습니다. 현재 상당히 많이 번역된 파일이 올라와 있습니다. http://cvs.kldp.net/cgi-bin/cvsweb.cgi/lang/Korean.lng?cvsroot=devckorcomm --류광
일단 위의 한국어 파일 자체에는 문제가 없고, 위의 CVS에 있는 것이 4.9.8.1 기준으로 최신입니다.
가끔 메뉴가 다 깨져서 나오는 것은 영어 이외의 다른 언어에서도 생기는 일이라고 알고 있구요. 아마도 문자열 처리 부분에서 뭔가 버그가 있는 것 같네요.
어쨌든, 메뉴들이 다 <ERR: xxx>로 나오면 한국어를 다시 지정해주면 되는데, 언어 설정하는 곳을 찾기가 힘들다는 게 문제입니다...
다음과 같은 순서로 메뉴나 옵션들을 선택하면 됩니다.
메인메뉴 ERR:106
-> ERR:221
-> ERR:639(두번째 탭)
-> ERR:622에서 Korean(한국어) 선택
-> ERR:2500 버튼으로 확인(참고로 취소는 ERR:2501)
from DevCTutorial : for( DWORD i = 0 ~~~ ) 구문에서 DWORD i의 스코프가 표준을 따르는 것 같습니다. VS에선 DWORD i가 for문 밖의 스코프를 가지는데 반해 BC++이나 gcc는 for문 안의 스코프를 가지네요. - conaman
VS에서도 그렇게 되도록 하는 옵션이 있다고 들었습니다. 서비스팩과도 관련이 있구요.... --류광
for에 관련된 옵션은 다음과 같습니다.. Za 옵션 : VC++ 6.0에서도 사용할 수 있으며 UI 상에서는 C/C++ 탭의 Customize 항목의 "Disable language extensions" 라는 체크박스로 조정을 할수 있습니다. 이것은 ANSI C 스탠다드를 지원하기 위한겁니다..C++이 아니죠.. 따라서 아주 간단한 C++ 샘플 컴파일하는데도 에러가 납니다.
Zc:forScope 옵션 : 이건 VC++ .NET에서만 사용가능합니다. UI 상에서는 C/C++ 부분의 language 부분에 "Force Conformance In For Loop Scope" 라는 이름으로 되어 있습니다(Zc:forScope을 직접 컴파일 옵션에 추가해도 됩니다).... --?chita000
질문을 여기서 하는게 맞나요? 궁금한게 있는데 네떡 플밍을 하려는데 socket.h와 inet.h가 없네요. winsock은 있는데.. -.-; - 익명
DevCpp는 윈도우즈용 프로그램을 만들기 위한 개발환경이니 윈속을 사용해야 하겠죠... --류광
vi나 vim같은 에디트를 사용할 수 는 없나요? 리눅스에서 gcc를 사용하는 장점중 하나가 에디터 라고 생각합니다만... -- errai
win32용 vim이 있습니다. 그리고 mingw에 별도 페키지로 msys라고 un*x환경을 에뮬레이션? 해주는 쉘이 있습니다. 한글사용에 문제가 있긴하지만... 리눅스 터미널에 들어가 작업하는 느낌 그대로 입니다. -- BL
최근에 DevCpp을 다운받아 win32 프로그램을 공부하고 있는 초보입니다. 다름이 아니라 리소스 파일을 작성하는 규칙이 있는지 궁금합니다. DevCpp의 리소스 파일을 선택하면 그냥 빈 편집창이 나타나기 때문에 초보인 저로서는 당황되더군요.혹시 편집창에서 어떻게 리소스를 작성해야 하는지 알려주시면 고맙겠습니다. -- 초보자
예전엔 GUI 형태의 리소스 편집기가 포함되어 있었던 것 같은데 지금은 없네요. lcc-win의 리소스 편집기를 사용하면 된다는 이야기가 있습니다. http://www.gamecoding.org.uk/faq.php 깨진 링크 참고. --류광
공개 또는 오픈소스 비주얼 리소스 에디터.... 찾다 찾다 하나를 찾긴 했는데 조금은 주의해서 사용해줘야 하는듯... 첨엔 DevCpp에서 안되는줄 알았는데 되긴하네요. ^^;; 메뉴를 하나 만들어 봤었는데 DevCpp에서 메뉴생성이 안되서(컴파일은 잘되는데) 한참을 다른 에디터를 찾아 방황했었는데 탑 메뉴에 id및 name이 부여되면 메뉴 생성이 안되는 군요.. 근데 이 에디터는 기본값을 주기 때문에 지워줘야 했습니다. 어쨌든! 조심해서 사용하면 괜찮을듯.(웹을 엄청 뒤지고 다녔는데 공개 비주얼 리소스 에디터란게 정말 찾기 힘들더군요.. 이건 소스포지 DevCpp포럼에서 찾아낸 것입니다.)
http://radasm.visualassembler.com/projects/ResEd.zip -- ?Batmask
DevCpp4.9.8.0에서 코드 완성기능을 활용하려면 어떻게 해야하는지 알려주시기 바랍니다. 도구/편집기 설정메뉴에서 클래스탭의 구문완성메뉴화면에서 코드완성에 체크를 해주었는데도 안되는 것 같습니다. -- 초보자
코드 완성은 아직 좀 불완전한 것 같구요. 일단 클래스 브라우저에 뜬 것들은 거의 확실히 되는 것 같습니다. 그 외의 것들(API 헤더에 있는 것 등)은 구문완성 패널 아래쪽 목록상자에 헤더 파일을 추가해줘야 할겁니다. --류광
DevCpp4.9.8.0을 사용하고 있습니다. bitset 컨테이너를 초기화하는 방법중에 '0'과'1'로 이루어진 문자열을 사용할 수 있다고 알고있습니다. 그런데 다음 문장 bitset<10> bs("1010101010"); 에서 컴파일 오류가 발생합니다. 오류메시지는 "invalid conversion from 'const char *' to 'long unsigned int' " 입니다. 헤더파일은 <iostream> <bitset>을 include 했으며, using namespace std;를 적용했습니다. 무엇이 잘못된 것인가요? -- 초보자
C 문자열은 안 됩니다. string을 사용하세요. 예: bitset<10> bs(string("1010101010")); --류광
Effective C++ 을 보면 아시겠지만, bitset<10> bs("1010101010"); 을 하더라도, string 클래스 내에, string(const char*) 컨스트럭터가 있기 때문에, string("1010101010") 으로 자동 형변환이 일어나야 합니다.
Dev-Cpp에 내장된 MinGW 컴파일러만으로는 autotool(autoconf, automake)로 빌드해야 하는 라이브러리들을 가져다 사용하기 위해서는 조금(?) 고생을 해야 합니다. 물론 패키지로 나와있는 라이브러리들은 그냥 가져다 쓰면 되겠지만, 그 수가 그렇게 많지 않지요.
그래서 제가 생각한 것이 Dev-Cpp는 MinGW 컴파일러 없이 설치하고(즉, IDE만 설치하고) 최신의 MinGW와 MSys 그리고 autotool이 포함된 MsysDTK를 가져다 사용하는 것이었는데, 도저히 이해하기 힘든 에러가 계속해서 나더군요(프로젝트 컴파일할 때, gcc나 g++에서 no input files라는 에러).
몇 번(?) 삽질을 한 결과 알게 된 것이 MSYS와 MinGW를 같은 디렉토리에 겹쳐서 깐 것이 문제더군요. 이것을 해결하는 방법은 두 가지입니다.
첫번째는 MinGW를 c:/MinGW에 깔고 나중에 Msys를 설치할 때 MinGW 디렉토리를 Msys에 있는 /etc/fstab를 통해 마운트하는 겁니다(설치할 때 물어보는데, 제대로 대답하면 알아서 fstab에 등록이 되지요.)
두번째는 먼저 Msys를 깔고 MinGW는 Msys 디렉토리 바로 밑에 있는 mingw 디렉토리에 설치하는 겁니다.
(첫번째의 경우 make.exe가 mingw32-make.exe로 이름이 바뀝니다. 그리고. MsysDTK는 Msys가 있는 디렉토리를 기준으로 설치하면 됩니다.)
이렇게 한 다음 Dev-Cpp에서 컴파일러 설정을 해 주면 되는데, 적당히 MinGW Compiler라는 이름의 컴파일러를 추가한 뒤 디렉토리 설정을 다음과 같이 해 주면 됩니다.(두번째 방식을 따랐을 경우입니다)
bin 디렉토리 :
C:\Msys\bin(rm 명령어 때문에 지정함) C:\Msys\Mingw\bin(MinGW 컴파일러가 있는 곳)
lib 디렉토리 :
C:\Msys\MinGW\lib C:\Msys\lib(나중에 빌드할 라이브러리들은 여기다 설치할 예정이므로 미리 설정해 둠)
C include 디렉토리 :
C:\Msys\MinGW\include C:\Msys\include(마찬가지로 아무 헤더 파일도 없지만, 미리 설정해 둠)
C++ include 디렉토리 :
C include 디렉토리 + C:\Msys\MinGW\include\c++3.2.3 (숫자는 달라질 수 있음.)
그리고 C:\Msys\MinGW\bin 디렉토리에 make.exe 파일이 있는지 확인해 보세요. 없으면, mingw32-make.exe 파일을 make 프로그램으로 등록하거나, 아니면 mingw32-make 파일을 make.exe로 바꾸거나 복사하세요. (저는 반대로 gcc, g++, make 모두를 mingw32-*.exe로 지정했습니다. ^^;)
이렇게 한 다음 적당한 예제 프로젝트들을 컴파일해 본 다음 이상이 없는지 확인해 보세요. 아무 문제가 없다면, 필요한 라이브러리들은 Msys 쉘 띄어서 컴파일해서 설치한 다음 이 라이브러리를 이용하는 프로그램들은 Dev-Cpp에서 작성하고 컴파일하면 됩니다. Cygwin상에서 돌아가는 컴파일러도 지금까지의 방법과 비슷하게 Dev-Cpp와 붙여서 컴파일할 수도 있겠지요. 단, 이 경우 컴파일된 실행파일이 cygwin10.dll 파일이 필요하다고 투덜될지도 모르겠습니다(cygwinin디렉토리가 패스에 잡혀있다면 아무런 에러 메세지도 안 뜨는데, 이것이 나중에 뒤통수를 칠지도 모릅니다. ^^;)
끝으로 덧붙이자면, Dev-Cpp에 내장된 MinGW 컴파일러보다 MinGW 공식 홈페이지에서 배포하는 컴파일러가 더 작은 크기의 실행파일을 생성해 냅니다. Dev-Cpp에 있는 대부분의 예제 프로젝트들이 그렇더군요. -- 사이져 --
앞에서 Dev-Cpp와 Msys를 사용하는 방법을 살펴봤는데, 이것보다 더 좋은 방법은 Cygwin을 사용하는 것입니다. (Msys는 프로그램이 너무 적어서 일일히 하나하나 가져다 컴파일해서 설치해야 하는데, 컴파일 안 되는 것이 너무 많습니다. --;)
방식은 Dev-Cpp + Msys 와 거의 비슷하고 디렉토리 설정 부분만 약간 다를 뿐인데요. Dev-Cpp의 컴파일러설정에서 Cygwin Compiler라는 컴파일러를 추가하고 다음과 같이 설정합니다. (Cygwin은 C:Cygwin에 설치되어 있다고 가정)
bin 디렉토리 :
C:\Cygwin\bin
lib 디렉토리 :
C:\Cygwin\libmingw C:Cygwin\lib
C include 디렉토리 :
C:\Cygwin\usr\include\mingw C:\Cygwin\usr\include\w32api C:\Cygwin\usr\include
C++ include 디렉토리 :
C:\Cygwin\usr\include\c++3.3.1 C:\Cygwin\usr\include\mingw C:\Cygwin\usr\include\w32api C:\Cygwin\usr\include
이러고 나서 프로젝트 옵션에서 컴파일러를 Cygwin Compiler로 지정하고 컴파일하면 되는데요. 앞에서 말한 것처럼 아무런 옵션도 주지 않으면, cygwin1.dll를 요구하는 실행파일이 생성되는데, 이것이 싫으신 분들은(대부분 싫어하시겠지만. ^^;) 링커 옵션에 -mno-cygwin 옵션을 추가한 다음 컴파일하시기 바랍니다. -- 사이져 --
(페이지 어디에 글을 추가해야 할 지, 제목이나 포매팅을 어떻게 해야 할 지 잘 모르겠으면 그냥 여기에 쓰세요...)
| 제일 위로 |
| 최종 수정 일시: 03월 18일(2008년) 11:06 PM 편집 | 정보 | 차이 | 비슷한 페이지 DebugInfo |
| 유용한 페이지들: 분류 분류 | 자유로운 연습장 SandBox | 무작위 페이지들 RandomPages | 인기있는 페이지들 MostPopular |