提示コードですが以下のmakefile
で undefined reference to
というエラーが出るのですがこれは何が原因なのでしょうか?
試したこと
glfw,glewの順序を入れ替える
-D GLEW_STATIC
を追加 参考サイトを参考にしました。
参考サイト: https://stackoverflow.com/questions/13384510/glew-linker-errors-undefined-reference-to-glewbindvertexarray
環境
OS: windows10
コンパイラ: g++
Makefile
makefile
1PRG :=libFrameWork.a 2SRC_DIR :=src 3OBJ_DIR :=obj 4DEP_DIR :=obj 5DEP :=$(wildcard $(DEP_DIR)/*.d) 6SRC :=$(wildcard $(SRC_DIR)/*.cpp) 7OBJ :=$(addprefix $(OBJ_DIR)/,$(patsubst %.cpp,%.o,$(notdir $(SRC)))) 8 9 10$(PRG): $(OBJ) 11 $(CXX) $^ -o $@ -D GLEW_STATIC -lopengl32 -Llibrary/lib -lglfw3 -lglew32s -lfreetype 12# ar rcs test/lib/$@ $(OBJ) 13 14$(OBJ_DIR)/%.o: src/%.cpp 15 $(CXX) -c -MMD -MP -Ilibrary -Ilibrary/freetype $< -o $@ 16-include $(DEP) 17 18clean: 19 rm -f ./$(OBJ_DIR)/*.o *.out ./$(OBJ_DIR)/*.d $(PRG) 20
ディレクトリ構成
C:\Users\yw325\Desktop\FrameWork\library\lib>dir ドライブ C のボリューム ラベルがありません。 ボリューム シリアル番号は 5EA1-4B93 です C:\Users\yw325\Desktop\FrameWork\library\lib のディレクトリ 2022/10/24 12:41 <DIR> . 2022/10/24 12:41 <DIR> .. 2022/05/02 18:16 48,658 freetype.lib 2017/07/31 20:42 701,288 glew32.lib 2017/07/31 20:42 2,584,968 glew32s.lib 2022/07/22 22:41 634,898 glfw3.lib 4 個のファイル 3,969,812 バイト 2 個のディレクトリ 194,954,461,184 バイトの空き領域 C:\Users\yw325\Desktop\FrameWork\library\lib>
コンソール
省略 c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Sprite.o:Sprite.cpp:(.text+0x28b): undefined reference to `_imp____glewBindBuffer' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Sprite.o:Sprite.cpp:(.text+0x2a8): undefined reference to `_imp____glewBufferSubData' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Sprite.o:Sprite.cpp:(.text+0x311): undefined reference to `_imp____glewBindVertexArray' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Sprite.o:Sprite.cpp:(.text+0x324): undefined reference to `_imp____glewBindBuffer' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x48): undefined reference to `glfwCreateWindow' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x179): undefined reference to `glfwRawMouseMotionSupported' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x1b6): undefined reference to `glfwSetWindowUserPointer' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x1cc): undefined reference to `glfwSetWindowSizeCallback' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x1e2): undefined reference to `glfwSetDropCallback' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x1f8): undefined reference to `glfwSetScrollCallback' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x20e): undefined reference to `glfwSetCharCallback' c:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: obj/Window.o:Window.cpp:(.text+0x224): undefined reference to `glfwSetKeyCallback' c:/mingw/bin/../lib/gcc/m 省略
回答1件
あなたの回答
tips
プレビュー