首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在linux中使用SDL?

如何在linux中使用SDL?
EN

Stack Overflow用户
提问于 2009-12-03 12:27:55
回答 3查看 25.2K关注 0票数 1

我学校的linux服务器只是一个基本的服务器,没有x-windows,只是一个命令行界面。

我试着在那台服务器上做一个图形化的c程序,但发现有很多困难。我使用的是SDL库,但每次我尝试用gcc编译我的代码时,我都会得到:

代码语言:javascript
复制
testcursor.c:(.text+0x1ad): undefined reference to `SDL_Init'
testcursor.c:(.text+0x1b6): undefined reference to `SDL_GetError'
testcursor.c:(.text+0x200): undefined reference to `SDL_SetVideoMode'
...

有人知道如何解决这个问题吗?如果没有,有没有在linux下用c做过图形化编程的,请帮帮忙!我会很感激。谢谢。

EN

回答 3

Stack Overflow用户

发布于 2010-01-12 19:54:35

linux上链接SDL的配置正在使用sdl- recommended way 脚本。

示例:

代码语言:javascript
复制
gcc -c test.c $(sdl-config --cflags)
gcc -o test test.o $(sdl-config --libs)
./test

或示例:

代码语言:javascript
复制
gcc -o test test.c $(sdl-config --cflags --libs)

其中`是反划线字符。

票数 11
EN

Stack Overflow用户

发布于 2009-12-03 12:30:36

-lSDL添加到您的编译行。

这将告诉gcc将您的代码链接到SDL库。

票数 7
EN

Stack Overflow用户

发布于 2009-12-03 12:32:21

您没有链接到SDL库。您的命令应如下所示:

代码语言:javascript
复制
gcc testcursor.c -lsdl

这是假设您使用的是Linux发行版附带的SDL。如果您下载并手动构建它,您可能需要更复杂的东西,如下所示:

代码语言:javascript
复制
gcc -I/usr/local/include/sdl testcursor.c -L/usr/local/lib -lsdl

-I和-L选项分别告诉gcc在哪里查找包含文件和库。第一个命令不需要它们,因为如果您在系统中使用常用的SDL,则它们位于默认位置。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1837639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档