2012-06-22 6 views
1

나는 mingw를 사용하여 C++로 상당히 긴 응용 프로그램을 작성하기 시작했으며 몇 명의 친구들에게 그것을 사용해 보았습니다. 그들이 .exe 파일을 실행하려고했을 때 다음과 같은 오류 메시지가 나타났습니다..exe를 실행하는 중 오류가 발생했습니다.

libgcc_s_dw2-1.dll가 컴퓨터에 없기 때문에 프로그램을 시작할 수 없습니다. 이 문제를 해결하기 위해 프로그램을 다시 설치하십시오.

이 오류는 디버그 버전에서 발생합니다. 릴리스 버전으로 컴파일 할 때 "libgcc_s_dw2"가 "libstdC++ - 6"으로 바뀌는 것을 제외하면 같은 오류가 발생합니다.

.exe에 .dll을 포함 시켜서이 문제를 해결할 수 있었지만, 더 많은 일반 사용자에게 공개하기로 결정했을 때 독립형이됩니다.

이 질문은 많이 묻지 만 모두가 -static-libstdc++을 링커 옵션에 추가한다고 말했습니다.

저는 CodeBlocks를 사용하여 옵션을 빌드하고 MinGW를 링크 된 동일한 위치에 두었습니다. 이것은 작동하지 않으므로 추가 옵션 옆에있는 다른 상자를 시도했지만 그 중 하나도 작동하지 않았습니다.

내가 아는 것은 아마도 간단한 일이지만, 어디서든지 생각할 수는 없다는 것을 알고 있습니다.

미리 감사드립니다.

+0

이 문제가 발생했습니다. 그렇다면 나는 로저 (Roger)로 바꿨다. 나는 [this] (http://nuwen.net/mingw.html)을 의미했다. ... 진지하게, 내가 선택한 최고의 프로그래밍 선택이었다. – chris

답변

1

here (공백으로 구분됨)과 같이 -static-libgcc-static-libstdc++ 옵션을 링커 설정에 추가하면 저에게 효과적입니다.

빌드 메뉴 (또는 Ctrl-F11)에서 실행 파일을 다시 빌드해야 설정을 변경 한 후 빌드하려고하면 CodeBlocks가 다시 빌드하지 않습니다.

관련 문제