|
楼主 |
发表于 2004-6-4 14:03:58
|
显示全部楼层
探索中...............
今天仔细研究了一下xmame的Makefile,发现了如下一段代码
# Uncomment depending on which is supplying GLX functions. nVidia uses
# libglx, Mesa/SGI use libglut
GLCFLAGS+=-DGLXLIB_NAME='\"libglut.so\"'
# GLCFLAGS+=-DGLXLIB_NAME='\"libglx.so\"'
惊喜之余马上将GLCFLAGS+=-DGLXLIB_NAME='\"libglut.so\"'注释掉,
改用GLCFLAGS+=-DGLXLIB_NAME='\"libglx.so\"'这一行,重新编译一遍.
可是,又让大家失望了!!!!!!!!!!!!
neogeo的游戏仍然不能play.
马上狂find,功夫不负有心人,居然在4463的驱动目录中找到了glx.h,gl.h和glxtoken.h这3个头文件!!!!在细看readme,原来驱动在默认情况下不安装这3个头文件,除非加了参数指明或者手动拷贝到/usr/include/GL/下,马上将原文件备份,再copy过去,不过这次问题又来了,编译无法通过!!!!!!
提示如下:
Compiling src/unix/video.c ...
In file included from /usr/include/GL/glx.h:27,
from video-drivers/gltool.h:53,
from video-drivers/glmame.h:35,
from video.c:10:
/usr/X11R6/include/X11/Xmd.h:132: error: conflicting types for `INT32'
osd_cpu.h:46: error: previous declaration of `INT32'
make[1]: *** [../../xneomame.obj/unix.xgl/video.o] 错误 1
make[1]: Leaving directory `/usr/local/src/games/xmame/xmame-0.77.1/src/unix'
make: *** [osdepend] 错误 2
看来只要把这个'INT 32'类型搞定,就应该可以了,解决问题的目标已经很明显了,就是这几个头文件和libGLU有调用上的问题.
我编程不是很好,主要是没有学过opengl编程,所以查看源码搞了半天也没有解决问题.希望哪位搞开发的大虾能解决一下这个问题.那么,我想nvidia驱动的glx兼容性问题也就算是彻底解决了.
继续探索中..........
路漫漫其修远兮,吾将上下而求索. |
|