You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++ SFML项目使用mingw32-make编译出现类成员未定义引用错误

错误原因

你遇到的是链接阶段错误,提示找不到Game类相关成员函数的定义,根源是你的Makefile配置存在疏漏:

  • 编译规则仅编译了main.cpp,没有把包含Game类实现的Game.cpp编译为目标文件
  • 链接规则也没有将Game类对应的目标文件纳入链接流程
修复方案

直接修改Makefile内容如下,注意Makefile中每一行规则的缩进必须使用Tab字符,不能用空格代替:

all: compile link

compile:
	g++ -I src/include -c main.cpp Game.cpp

link:
	g++ main.o Game.o -o main -L src/lib -l sfml-graphics -l sfml-window -l sfml-system

clean:
	del *.o main.exe

修改完成后,先删除之前生成的main.o旧文件,再重新执行mingw32-make命令即可正常编译通过。如果需要清理编译产物,可以运行mingw32-make clean。

内容的提问来源于stack exchange,提问作者Khaled Nadam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:48:03