Windows10 에서 MinGW를 설치한 후, g++을 연결하여 빌드되도록 스크립트를 수정하여 사용하고 있었는데 어느날 아래와 같은 오류가 났다.
프로시저 시작 지점 _Jnflx__cxx1112..........을(를) DLL main.exe 에서 찾을 수 없습니다.
main.exe는 내가 실행하려는 파일이었고, 앞에 문자열은 에러메시지인 것 같은데, 암호코드처럼 길고 복잡했다. 여튼 코드를 하나씩 지워본 결과 <string> 헤더를 추가하고 std::string을 사용하려면 위 에러가 발생했다.
원래 컴파일하던 옵션은 아래와 같았는 데,
g++ -std=c++11 -O2 main.cpp -o main.exe
-static-libstdc++ 옵션을 붙여서 아래처럼 컴파일했더니 오류가 해결되었다!
g++ -std=c++11 -O2 main.cpp -o main.exe -static-libstdc++