6月 20

いろいろ気持ち悪いことは多いのですが、、、、

コンピュータをやっていて、、、
明らかに動くはずのないのに動いている時って気持ち悪い以外になんという?

具体的に言うと
Linuxはグラフィックボードとトコトン相性が悪い。

今、大学で使っているPCのマザーボードは
SuperMicro X7DVL-L 35,384
Intel Xeon E 5320 26,000
Intel Xeon E 5320 26,000

DDR2 SDRAM 6400 2GB 2,000
DDR2 SDRAM 6400 2GB 2,000
DDR2 SDRAM 6400 2GB 2,000
DDR2 SDRAM 6400 2GB 2,000

なのだが、問題はVGA

デフォルトで
XGI 製のVGAがついているのだが、、、、なんといってもショボイ

そこで、PCIスロット(PCI-Express 16ではなく)に
Radeon HD 2400 Pro DDR2 256M
を積んでいるのだが

PCI-Expressでもなければ、AGPでもない HD2400を認識してくれるはずもなく。。。
無理やりDriverをDetectさせているのだが。。。。

大量のWarning….そして、、、
[root@labx ~]# cat /var/log/Xorg.0.log |grep WW
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) fglrx: Force AIGLX enabled
(WW) Falling back to old probe method for fglrx
(WW) This ATI Proprietary Linux Driver does not guarantee support of video driver ABI higher than 2.0
(WW) Video driver ABI version of the X server is 4.1
(WW) fglrx: No matching Device section for instance (BusID PCI:0@7:0:1) found
(WW) fglrx: No matching Device section for instance (BusID PCI:0@7:0:1) found
(WW) fglrx(0): board is an unknown third party board, chipset is supported

そして、
[root@labx ~]# fglrxinfo
display: :1.0 screen: 0
OpenGL vendor string: Mesa Project
OpenGL renderer string: Software Rasterizer
OpenGL version string: 1.4 (2.1 Mesa 7.3-devel)

[root@labx ~]# glxinfo
name of display: :1.0
display: :1 screen: 0
direct rendering: No (If you want to find out why, try setting LIBGL_DEBUG=verbose)
server glx vendor string: SGI
server glx version string: 1.2
================== 以下省略 =======================================================

もちろんaticonfigでxorg.confも設定てある
[root@labx ~]# cat /etc/X11/xorg.conf

# Xorg configuration created by livna-config-display

Section “ServerLayout”
Identifier “Default Layout”
Screen 0 “Screen0” 0 0
EndSection

Section “Files”
ModulePath “/usr/lib64/xorg/modules/extensions/fglrx”
ModulePath “/usr/lib64/xorg/modules”
EndSection

Section “Module”
EndSection

Section “ServerFlags”
Option “AIGLX” “on”
EndSection

Section “Device”
Identifier “Videocard0”
Driver “fglrx”
Option “OpenGLOverlay” “on”
Option “VideoOverlay” “on”
EndSection

Section “Screen”
Identifier “Screen0”
Device “Videocard0”
DefaultDepth 24
EndSection

Section “Extensions”
Option “Composite” “Enable”
EndSection
—————————————————————-
こんなわけで、動くはずのないOpenGLが動いたり、、、動かなかったり、、、、
#vi CheckGL.cpp

#include
#include
#include
using namespace std;

int main(int argc, char *argv[]){
QApplication app(argc, argv);

if(QGLFormat::hasOpenGL()){
cerr << " This system has no OpenGL Support q" << endl; return 1; } else{ cout << " This system has OpenGL Support b" << endl; } return app.exec(); } #qmake -project #vi CheckGL.pro ###################################################################### # Automatically generated by qmake (2.01a) ? 6 20 08:47:59 2009 ###################################################################### TEMPLATE = app TARGET = DEPENDPATH += . INCLUDEPATH += . QT += opengl # Input SOURCES += main.cpp #qmake #make #./CheckGL Xlib: extension "RANDR" missing on display ":1.0". This system has no OpenGL Support q ---------------------------------------------------------------------- でも、 GLUTを利用したC言語 #include
#include
#include
#include
#include
#include

void display(){
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex2f(-0.5,-0.5);
glVertex2f(-0.5,0.5);
glVertex2f(0.5,0.5);
glVertex2f(0.5,-0.5);
glEnd();
glFlush();
}

int main(int argc, char **argv){
glutInit(&argc, argv);
glutCreateWindow(“Simple”);
glutDisplayFunc(display);
glutMainLoop();
}

もちろんQTGLも動くという始末。。。。。

いや、本当に気持ち悪い。。。。

というか、、、、PCI-Expressが使えたら関係ないんだろうけど。。。。

Leave a Reply

 

preload preload preload