2012-05-12 3 views
-1

저는 C++ 컴파일러가 어떻게 처리하는지 궁금합니다.
먼저, 가지고있는 C++ 컴파일러를 어떻게 찾을 수 있습니까? (gcc? gnu? or something ...)
그러면 Windows GUI를 프로그래밍 할 때 컴파일러가 콘솔 창을 숨기는 방법은 무엇입니까?
(또는 코드에서 콘솔을 숨기고 있습니까?)
또한 컴파일 할 때 DLL을 어떻게 포함합니까?
그리고 내 컴파일러에 대해 다른 모든 것을 배울 수있는 곳이 있습니까?C++ 컴파일러 질문

EDIT : @StuartGolodetz 저는 실제로 MinGW가 있다고 생각합니다. (DevCpp을 사용하고 있습니다); 내가 콘솔 윈도우를 숨기거나 DLL을 포함하는 방법을 묻는 순간 IDE에서 설정하는 것이 아니라 오히려 어떻게해야합니까? 명령 행에서 을 어떻게할까요? gcc/g++는 UNIX 기반의 일반적인 컴파일러, 시스템에 많은 다른 컴파일러를 가질 수 있기 때문에

+3

모든 프로그램에 대해 콘솔을 보유 할 필요는 없습니다. – chris

+0

요점은, 사람들이 당신을 도우려고 할 때 사람들의 반응에 짜증을 내지 않는다는 것입니다. - 관련없는 많은 부분 (StackOverflow 형식에 적합하지 않은)을 많이 가지고 여러 부분으로 된 질문을 한 적이 있습니다. 나는 그것을 시도하고 대답하기 위해 내 시간을 포기했다. –

+1

미안하지만, 그런 식으로 나올 뜻이 아니 었어. 나는 조금 피곤하고 단단한 대답을 찾고 있다고 생각합니다. – Codesmith

답변

3

어려운 질문, 대답하고, 정말 말했다 당신이 :)을 사용하고있는 하나의 질문입니다 Visual C++은 Windows의 일반적인 컴파일러입니다. 이러한 컴파일러 중 하나를 사용하는 것이 합리적입니다. 당신이 한 경우

which g++ 

은 (버전을 확인하려면, 당신은 UNIX 기반 시스템에있어, 당신이 말하는, 당신이 할 수있는, 당신은 g++을 가지고 있는지 확인하려면

)를 가지고 수행 비주얼 C++는 Windows GUI를 프로그래밍 할 때, 그것은 단지 그것을 표시되지 않습니다 콘솔 창을 숨기는 측면에서

g++ --version 

는 Windows에 서브 시스템을 설정 한 경우 프로젝트 설정에서 컴파일 할 때 당신은 DLL을 포함하지 않는


, 당신은 그들에 해당하는 .lib 파일에 링크하고 그들이 런타임에서 찾을 수 있는지 확인하십시오. 컴파일과 링크 사이의 (중요한) 차이점에 유의하십시오. 이것은 합리적인 링크처럼 보인다 :

http://edmulroy.portbridge.com/oview.htm


이 컴파일러는, 당신은 MSDN을 통해 읽을 수 있습니다 (이 같은 소리 것입니다) Visual C++에서입니다 가정.


편집 :

새 질문에 대한 응답에서 여기를 참조 :

How to stop Mingw (g++) opening a console window in windows

다시합니다. DLL을 포함하지 않으려면 -l<libname>을 사용하여 DLL의 가져 오기 라이브러리에 연결 한 다음 DLL 자체가 실행 파일과 동일한 디렉토리에 있거나 런타임시 시스템 경로에 있는지 확인하십시오.

+2

MSDN을 (를) 통해 읽기? 그러나 그것은 그 (것)들에게 년을 걸릴 것입니다! –

+1

@MrLister : "can"! = "should":) 진짜 대답은, 당신이 경험적으로 컴파일러에 대해 배워서 시도해 보는 것입니다. 그러나 그것은 또한 오랜 시간이 걸릴 것입니다. 경험을 얻는 것은 불행히도 느린 과정입니다. –

+0

@StuartGolodez 사실, 정확히 무엇이 필요한지 잘 모르는 경우, MSDN은 너무 커서 손쉽게 사용할 수 없습니다. –