저는 Windows를 사용하고 있습니다. 함수는 glGenBuffers
입니다. 내가 그것을 사용할 때 나는 다음과 같은 오류 얻을 :이 코드에서 정의되지 않은 참조가 나오는 이유는 무엇입니까?
error: undefined reference to _imp____glewBufferData
내 MinGW/lib
폴더에있는 glew32
DLL에 연결하고있어, 그리고 나는 MinGW/include
내부 glew.h
있습니다. WINDOWS/system32
폴더 안에 glew32.dll
도 넣습니다.
I는 다음과 같이 컴파일하고 있습니다 : 그것은 문제를 일으키는 라이브러리의 순서
mingw32-g++.exe ... -lglfw -lglfw3 -lopengl32 -lglew32 -lgdi32 -lglu32 -lglew32s
인가? 그렇다면 다른 것 앞에 무엇이 있어야합니까?
정적 라이브러리에 연결 중이므로 명령 줄에'-DGLEW_STATIC'을 추가하십시오. GLEW32 DLL은 프로그램의 모양이나 형식과 관련이 없습니다. 당신은 앞뒤로 가서 디스크 공간을 절약하기 위해 삭제할 수 있습니다 : P –
@ AndonM.Coleman dll을 사용하고 있기 때문에 이것이 동적 라이브러리라고 생각했습니다 ... –
아니요, 'glew32s'에 링크하면 * ** 정적 *** 라이브러리 (즉, ** s **의 약자입니다). 사실, mingw를 사용하면 수십 개의 농구를 뛰어 넘지 않고도 동적 라이브러리에 연결할 수 없습니다. 'GLEW_STATIC'을 정의하지 않고 소스 파일 중 하나 이상을 컴파일했기 때문에이 오류가 발생했습니다. 따라서 잘못된 연결을 사용하고 있습니다. –