我想在我的Ubuntu上使用SDL库编译一个C程序。
我从编译器中得到此错误:
Undefined reference to `SDL_FreeSurface'.
以及其他未定义的引用。
答案 0 :(得分:2)
就像thurizas所说的那样,“未定义的引用”意味着链接器(编译器中将代码对象组合到最终程序中的部分)无法找到您使用的外部函数或变量。通常这意味着您忘记链接到库,或者您的链接器发现该库的版本错误。
在这种情况下,您应该在编译器命令行中添加“-lSDL2”,这意味着“与libSDL2.so链接”。这对另外 <#>包括头文件。默认情况下,只链接标准C库(libc.so)。