这个问题在这里已有答案:
我正在尝试使用SDL与我的c项目实际上它是一个多文件项目相互连接,所以当我安装sdl我发现一个问题,sdl不与其他文件连接,它只与主连接,我发现此错误C :\ Users \ EYAOSM~1 \ AppData \ Local \ Temp \ ccoI9IBj.o:main.c :(。text + 0x7):未定义引用`lstcltcreer',其他所有函数都在main之外的其他文件中
我用它来连接sdl到main
C:\ Users \ Eya Osmane \ Desktop \ prooooojjjjj> gcc src / * main.c -o bin / prog -I include -L lib -lmingw32 -lSDL2main -lSDL2
这是我的程序的结构
src包含我写的主文件和其他文件
其他文件bin包含lib和obj是sdl文件
并且所有这些文件都放在我桌面上的projjjjj中
您的问题与SDL无关。
您只需要将项目使用的.c文件列表传递给GCC。这可以使用通配符(*)运算符完成。
gcc src/*.c -o bin/prog -I include -L lib -lmingw32 -lSDL2main -lSDL2
或者通过明确地包括文件
gcc src/a.c src/b.c src/main.c -o bin/prog -I include -L lib -lmingw32 -lSDL2main -lSDL2