2014-07-18 7 views
3

저는 MinGW의 새로운 사용자입니다. 이미 문제가 있습니다. 매우 간단한 Hello world C++ 프로그램을 컴파일하려고 할 때 오류가 발생합니다. 다음Mingw 런타임 오류

cc1plus.exe - Program error 

The application failed to initialize properly 
(0xc0000142). Press OK to close application. 

창문이를 찾는 방법에 대한 일반적인 정크 :

Microsoft Visual C++ Runtime Library 
Runtime Error! 

Program: c:\mingw\bin\...\libexec\gcc\mingw32\4.8.1\cc1plus.exe 

R6034: 
An application has made an attempt to load the C Runtime library incorrectly. 
Please contact the application's support team for more information. 

이 메시지 대화 상자 바로 뒤에 :

g++ hello.cpp -o hello.exe 

후 나는 메시지 대화 상자를 얻을 : 나는 명령을 입력 솔루션 온라인.

자동 설치 프로그램 mingw-get-setup.exe을 사용했고 지침을 따르기 만했습니다. 설치 폴더를 C:\mingw으로 선택하고 MinGW 설치 관리자에서 mingw-developer-toolkit, mingw32-base, mingw32-gcc-g++, mingw32-gcc-objcmsys-base을 설치하기로했습니다. 설치 가이드에서 제안한대로 Environment VariablesPATH을 추가했습니다.

#include <iostream> 

using namespace std; 

int main(int argc, char ** argv){ 
    cout << "hello world" << endl; 
    return 0; 
} 

내가 또한 명령과 유사한 ANSI-C 코드를 컴파일하려고 :

내가 컴파일하려고했던 코드이었다

gcc hello.c -o hello.exe 

와 나는 같은 오류가 발생했습니다.

나는 MSYS 에서뿐만 아니라 cmd.exe에서 명령을 시도하고 두 경우 모두에서 오류가 발생했습니다. 내 운영 체제는 Windows Vista Home Premium이고 Microsoft Visual C++ 2010이 설치되어 있습니다. 왜냐하면 VC++이없는 Windows 7 컴퓨터에서 동일한 설치를 시도했기 때문에 컴파일러가 문제없이 작동했기 때문입니다. 이것은 같은 컴퓨터에 MinGW와 VC++을 가질 수 없다는 것을 의미합니까?

+0

mingw 컴파일러가 VC++ CRT 라이브러리를로드하려고 시도하는 것처럼 보입니다. 일반 cmd 또는 VS cmd에서 명령을 실행하고 있습니까? VC++가 설치된 mingw 사용에는 문제가 없습니다. vs2012, vs2013, mingw32 및 mingw64와 같은 컴퓨터에 있습니다. – NetVipeC

+1

Windows에서 일부 응용 프로그램은 VC 런타임의 자체 버전을 % PATH %에 잘못 넣습니다. 이렇게하면 다른 응용 프로그램이 중단됩니다. 빈 % PATH %로 이것을 재현 할 수 있는지 확인하십시오. –

+0

@NetVipeC : 보통 cmd – johanmaack

답변

0

Gnu 컴파일러가 아닌 다른 프로그램이 % PATH % 변수에 값을 남겼습니다. 처음에는 알지 못했던 점은 두 개의 % PATH % 변수가 있는데 하나는 사용자 용이고 다른 하나는 시스템 용이고 둘 모두 MinGW 설치를 방해 할 수 있다는 사실입니다.

% PATH % 변수에는 (적어도 내 PC에서는) 많은 항목이 포함되어 있으며 모두 제거하면 좋은 생각이 아닐 수도 있습니다. 필자의 경우, MatLab과 Texnic Center에서 항목을 제거하는 것으로 충분했습니다. 그 후 g ++ 및 gcc는 완벽하게 작동했습니다.