인프런 커뮤니티 질문&답변

SIHEON KIM님의 프로필 이미지

작성한 질문수

홍정모의 게임 만들기 연습 문제 패키지

1.1 실시간 상호작용 어플리케이션의 구조

예제 다운로드 받고 바로 실행하는데 빌드 실패 뜨는데 어떻게 해결해야하나요 ?

19.09.16 16:30 작성

·

532

0

예제 다운로드 받고 바로 실행하는데 빌드 실패 뜨는데 어떻게 해결해야하나요 ?\

2015년 비주얼 스튜디오로 실행하면
>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(57,5): error MSB8020: The build tools for v141 (Platform Toolset = 'v141') cannot be found. To build using the v141 build tools, please install v141 build tools.  Alternatively, you may upgrade to the current Visual Studio tools by selecting the Project menu or right-click the solution, and then selecting "Retarget solution".

이렇게 오류가 뜨네요 ㅠ

2019년 비주얼 스튜디오로 실행해면

1>DrawFunctions.obj : error LNK2019: __imp_glBegin 외부 기호(참조 위치: "void __cdecl jm::drawFilledBox(class jm::RGB const &,float const &,float const &)" (?drawFilledBox@jm@@YAXAEBVRGB@1@AEBM1@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glColor3fv 외부 기호(참조 위치: "void __cdecl jm::drawFilledBox(class jm::RGB const &,float const &,float const &)" (?drawFilledBox@jm@@YAXAEBVRGB@1@AEBM1@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glEnd 외부 기호(참조 위치: "void __cdecl jm::drawFilledBox(class jm::RGB const &,float const &,float const &)" (?drawFilledBox@jm@@YAXAEBVRGB@1@AEBM1@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glLineWidth 외부 기호(참조 위치: "void __cdecl jm::setLineWidth(int const &)" (?setLineWidth@jm@@YAXAEBH@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glPointSize 외부 기호(참조 위치: "void __cdecl jm::drawPoint(class jm::RGB const &,class jm::Vector2<float> const &,float const &)" (?drawPoint@jm@@YAXAEBVRGB@1@AEBV?$Vector2@M@1@AEBM@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glPopMatrix 외부 기호(참조 위치: "void __cdecl jm::endTransformation(void)" (?endTransformation@jm@@YAXXZ) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2001: __imp_glPopMatrix 외부 기호를 확인할 수 없습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glPushMatrix 외부 기호(참조 위치: "void __cdecl jm::beginTransformation(void)" (?beginTransformation@jm@@YAXXZ) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2001: __imp_glPushMatrix 외부 기호를 확인할 수 없습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glRotatef 외부 기호(참조 위치: "void __cdecl jm::rotate(float const &)" (?rotate@jm@@YAXAEBM@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glScalef 외부 기호(참조 위치: "void __cdecl jm::scale(float const &,float const &)" (?scale@jm@@YAXAEBM0@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glTranslatef 외부 기호(참조 위치: "void __cdecl jm::translate(float const &,float const &)" (?translate@jm@@YAXAEBM0@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glVertex2f 외부 기호(참조 위치: "void __cdecl jm::drawFilledBox(class jm::RGB const &,float const &,float const &)" (?drawFilledBox@jm@@YAXAEBVRGB@1@AEBM1@Z) 함수)에서 확인하지 못했습니다.

1>DrawFunctions.obj : error LNK2019: __imp_glVertex2fv 외부 기호(참조 위치: "void __cdecl jm::drawFilledStar(class jm::RGB const &,float const &,float const &)" (?drawFilledStar@jm@@YAXAEBVRGB@1@AEBM1@Z) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glBlendFunc 외부 기호(참조 위치: "public: class jm::Game2D & __cdecl jm::Game2D::init(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int const &,int const &,bool const &,int const &)" (?init@Game2D@jm@@QEAAAEAV12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBH1AEB_N1@Z) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glClear 외부 기호(참조 위치: "public: void __cdecl jm::Game2D::run(void)" (?run@Game2D@jm@@QEAAXXZ) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glClearColor 외부 기호(참조 위치: "public: void __cdecl jm::Game2D::run(void)" (?run@Game2D@jm@@QEAAXXZ) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glEnable 외부 기호(참조 위치: "public: class jm::Game2D & __cdecl jm::Game2D::init(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int const &,int const &,bool const &,int const &)" (?init@Game2D@jm@@QEAAAEAV12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBH1AEB_N1@Z) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glHint 외부 기호(참조 위치: "public: class jm::Game2D & __cdecl jm::Game2D::init(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int const &,int const &,bool const &,int const &)" (?init@Game2D@jm@@QEAAAEAV12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBH1AEB_N1@Z) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glMatrixMode 외부 기호(참조 위치: "public: void __cdecl jm::Game2D::run(void)" (?run@Game2D@jm@@QEAAXXZ) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glOrtho 외부 기호(참조 위치: "public: class jm::Game2D & __cdecl jm::Game2D::init(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int const &,int const &,bool const &,int const &)" (?init@Game2D@jm@@QEAAAEAV12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBH1AEB_N1@Z) 함수)에서 확인하지 못했습니다.

1>Game2D.obj : error LNK2019: __imp_glViewport 외부 기호(참조 위치: "public: class jm::Game2D & __cdecl jm::Game2D::init(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int const &,int const &,bool const &,int const &)" (?init@Game2D@jm@@QEAAAEAV12@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBH1AEB_N1@Z) 함수)에서 확인하지 못했습니다.

1>C:\Users\김시헌\Desktop\GameDevPracticePackage20181206 (1)\Chapter1\Lecture1\x64\Debug\Lecture1.exe : fatal error LNK1120: 20개의 확인할 수 없는 외부 참조입니다.

이렇게 뜨는데 아직 시작도 안했는데 이렇게 되서 골치가 아프네요 ㅠ

답변 1

0

홍정모님의 프로필 이미지
홍정모
지식공유자

2019. 09. 17. 00:51

안녕하세요? 원래 시작이 제일 까다롭습니다. 문법은 오히려 쉽지요. 뭘 하시든지 이때를 견디셔야 합니다.

2019로 실행시 나오는 에러 메시지를 보니까 opengl을 설치하지 않으신 것 같네요.  vcpkg를 사용하시면 편합니다.