정리해보았다


djgpp -

옛날엔 win32용 gcc라고 소개하던데 언젠가부터 dos용 gcc라고 바꿧다

마지막 사용했을때 xp에서 잘 컴파일됬던걸로 기억한다

다른것들과 차이점이라면 socket 함수를 win95용?(잘기억안난다) 함수를 사용한다

wsock2 였었나?

궁굼하면 니들이 찾아봐라


mingw -

사람들이 가장 많이 사용하는 win32용 gcc다

물론 c++ 컴파일러도 있다

socket함수는 winsock2 함수 고대로 사용하면 된다

버전이 4.x 대라 c++11 지원안한다

그래서 boost 를 같이 깔아서 쓰는경우가 많다


cygwin -

레드헷에서 만든거다

써본적 한번도 없어서 정보가 정확하지 않을수도 잇다

특이한점은 다른 윈도우용 gcc와 다르게 리눅스용 socket함수를 사용한다

그리고 리눅스용 시스템콜도 사용하고, 리눅스 소스도 컴파일 된다

배포할때 sygwin1.dll 인가 파일이 필요하다


tdmgcc -

32, 64비트 다되는 gcc다

버전이 5.1 이라서 c++11 사용가능하다


clang -

버전 5.x 지원해서 c++11 사용가능하다

gcc 5.x 처음나왔을때 가장 완벽하게 가장 빨리 c++11 지원했던걸로 안다

이것도 안써봐서 모르겠다


mingw64 -

간단하게 mingw의 64비트 버전이라고 생각하면 된다

32, 64 둘다 빌드 가능하고 c++11 지원한다


msys2 -

이건 msys2 를 깐다음에 pacman 으로 설치하면 gcc가 깔린다

버전이 무려 5.3이다

DialogBox() 함수에서 4번째 인자를 DLGPROC 형으로 형변환 안해주면 에러가 발생한다



옛날엔 djgpp랑 cygwin 두개뿐이였는데 많아졌구나