rpm -qa | grep SDL
如果没有找到相应的RPM包,那么可以去这里下载。
SDL只包含了最基本的东西,更多的扩展可以在这里下载.其中常用的有SDL_image,SDL_ttf,SDL_mixer等,安装的时候需要注意带有devel的是开发库,而不带的是运行库,一般两个都需要安装。
安装好SDL以后就可以开始写第一个程序了,需要注意的是编译程序时应该加上SDL的链接,如:
gcc -lSDL -o hello hello.c
如果你还使用了其它库,那么也要加上相应库的连接:
gcc-lSDL -lSDL_image -o hello hello.c
下面就可以使用运行SDL程序了,在X下面应该不会有什么问题的,不过如果想在终端下运行可能就会出现问题了。一个先决条件是启动Linux时要在grub中加参数vga=0×314(后面这个根据你的需要可以调整),加这个参数后Linux终端就开始使用FrameBuffer了。
下面是不同分辨率、位数所对应的16进制数:
引用:|640×480 800×600 1024×768 1280×1024
---+----------------------------
256 | 0×301 0×303 0×305 0×307
32k | 0×310 0×313 0×316 0×319
64k | 0×311 0×314 0×317 0×31A
16M| 0×312 0×315 0×318 0×31B
这样在终端下使用SDL的条件已经具备了,开始运行编译好的SDL程序(你可以在SDL官方网站上下载一些不错的例子),不过你很可能会得到下面的错误信息:
Enable to open mouse.
然而我在单用户模式下运行程序却没有这个错误信息。
google了一下,查到应该是鼠标设备文件在终端下没有权限被读取,这下明白了为什么在单用户模式下程序可以正常运行,单用户模式下本来登录的就是root,所以不会存在权限的问题。
于是在/dev/目录下找到了鼠标设置,我的F7中有下面三个文件:
引用:crw---- 1 root root 13, 63 08-31 23:44 mice
cr----- 1 root root 13, 32 08-31 23:44 mouse0
cr----- 1 root root 13, 33 08-31 23:44 mouse1
经过我测试表明需要对mice这个设备文件权限进行修改:
chmod 0644 mice
把这个设备的的读权限给其它用户了,这样普通用户也可以在终端下正常运行SDL程序了。
OK,使用SDL开发的准备工作已经全部完毕!SDL的开发之旅就要开始了。
niutao0602 于 2007-12-30 11:13:09发表:
我的可以正常编译,在终端下运行是提示
no video driver
不知道是什么错误?
gxf 于 2007-12-29 22:13:15发表:
SDL可以说是Linux下的DX了