ソースディレクトリで
./configure && make uninstall && ldconfig
ソースディレクトリで
./configure && make uninstall && ldconfig
<*> /dev/agpgart (AGP Support) [*] Intel 440LX/BX/GX and I815/I820/I830M/I830MP/I840/I845/I850/I86 Direct Rendering Manager (XFree86 DRI support) ---> [*] Direct Rendering Manager (XFree86 DRI support) <M> Matrox g200/g400
/sbin/modprobe mga
2006/08/17 追記 : linux-2.4.33.xに含まれるMatrox G400のDRMドライバでは DRI機能が有効になりました。ですので、特にモジュール化する必要は無くなり ました。
#define XdmxServer YES #define InstallXinitConfig YES #define InstallXdmConfig YES #define InstallFSConfig YES #define HasFreetype2 NO #define HasFontconfig NO
cp /etc/X11/XF86Config /etc/X11/xorg.confDRIを有効にするためのキモは、
Section "Module" 〜途中省略〜 Load "glx" Load "dri" EndSection Section "DRI" Mode 0666 EndSection
cvs -z3 -d:pserver:anonymous@dri.freedesktop.org:/cvs/dri loginパスワード要求に対しては[Enter]入力。
cvs -z3 -d:pserver:anonymous@dri.freedesktop.org:/cvs/dri co drm cvs -z3 -d:pserver:anonymous@dri.freedesktop.org:/cvs/dri logout
2006/08/17 追記 : linux-2.4.33.xに含まれるMatrox G400のDRMドライバでは DRI機能が有効になりました。ですので、以上のモジュール入れ換え作業は 特に必要有りません。
direct rendering: Yesと表示されれば、DRIが有効になっています。もしダメなら、 /var/log/Xorg.0.logを参照して原因を探りましょう。
#define BuildXterm YESとしたら、Xのビルド時に一緒に出来上がるはずです...が、Slackware-8.0な 環境では多少問題があって(group utmpが無いとか...)うまく行かなくて、 xtermのソースディレクトリで個別に
ln -sf /usr/local/bin/xterm /usr/X11R6/bin/xtermした方がいいかもしれません。
たとえば、横方向解像度 1600ドット、縦方向解像度 1200ドット、リフレッシュレート 75Hzで 表示したい場合、以下のように実行します。
gtf 1600 1200 75 # 1600x1200 @ 75.00 Hz (GTF) hsync: 93.97 kHz; pclk: 205.99 MHz Modeline "1600x1200_75.00" 205.99 1600 1720 1896 2192 1200 1201 1204 1253 -HSync +Vsyncで、結果から水平同期周波数の93.97kHzがモニターの適正範囲内でかつ、ピクセルクロックの205.99MHzが ビデオボードの適正範囲内であれば、"1600x1200_75.00"を"1600x1200"に修正してxorg.confに 転記してやればうまくいく可能性が高いです。
X client -> xlib(のfont描画関数) -> (freetype|xtt) module -> font描画こんな感じ(と想像する)。Core X font systemでは、サーバ側でfont描画を行います。 kterm, tgif等、比較的古いアプリケーションはこの方式を利用してます。
Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/X11R6/lib/modules" FontPath "/usr/share/fonts/TrueType" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/CID/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" # FontPath "tcp/localhost:7100" EndSectionのように指定する。
X client -> gtk+-2.x -> gdk -> Xft2 + fontconfig -> font描画こんな感じ(と想像する)。gtk+-2.xを利用したアプリケーションでは、クライアント側でfont描画を行います。 gnome, firefox等、比較的新しいアプリケーションはこの方式を利用してます。
独自にフォントパスを追加したい場合は、/etc/fonts/local.conf にて
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <dir>/usr/share/fonts/TrueType</dir> </fontconfig>のように指定する。
fc-cache -f -v上記のコマンド実行で、/etc/fonts/以下の設定ファイルで指定したフォント格納 ディレクトリ配下にfonts.cache-1が作成される。
/var/log/Xorg.0.log.oldの最後には以下のメッセージが記録されていた。
This should not happen! An unresolved function was called! Fatal server error: Please consult the The X.Org Foundation support at http://wiki.X.Org for help. Please also check the log file at "/var/log/Xorg.0.log" for additional information.「これはありえな〜い!解決できない機能がよびだされたよ〜ん」との事。 ん〜なんだか深みにはまりそうな気配が...と思ったけれど、ふとログの 何行か上を見てみると...
Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllrealloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved! Symbol Xllalloc from module /usr/X11R6/lib/modules/fonts/libspeedo.a is unresolved!こないなメッセージがぁ...。とりあえず/etc/X11/xorg.confから
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" Load "speedo"上記のどちらかの行をコメントアウトすると現象は回避されるよう。
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <!-- /etc/fonts/fonts.conf file to configure system font access --> <fontconfig> <!-- Some Asian fonts misadvertise themselves as monospaced when in fact they are dual-spaced (half and full). This makes FreeType very confused as it forces all widths to match. Undo this magic by disabling the width forcing code --> <match target="font"> <test name="family"><string>IPAGothic</string></test> <edit name="globaladvance"><bool>false</bool></edit> </match> <match target="font"> <test name="family"><string>IPAMincho</string></test> <edit name="globaladvance"><bool>false</bool></edit> </match> </fontconfig>問題を起こすフォントに関してglobaladvanceという機能を無効に しています。別の幾つかのアジア圏のフォントについては /etc/fonts/fonts.confに既に同様の設定が記述されており、ある程度 既知の問題のよう。 根本の解決はfontconfig(or freetype or xft ?)のバージョンアップらしい。