Lubuntu 16.04 で SiS製ドライバを利用する – Optiplex 160 の場合

概要

ぐぬぬ氏による SiS ドライバ (x86-video-sis-stable) を利用するとある程度ましな解像度で利用できるようになった。640×480 の状態であったのが、1024×768 まで選択できるようになった。コンソールでの作業時にだいぶ助かる。普段は Linux へリモートデスクトップまたは SSH 経由で利用するため問題なし。

手順

1. まず、ぐぬぬ氏の Github リポジトリから ZIP 形式のソースコードをダウンロードします。

2. 適当なディレクトリに保存して展開します。当記事の例では、/usr/local/src 配下にソースを保存しているため sudo つけてます。展開すると中に README があります。


$ sudo unzip ./xf86-video-sis-stable-master.zip

3. コンパイルに必要なパッケージをインストールします。configure 実行後 make; make install する前に vidmodeproc.h をインクルードしないように次の手順 4 を実施します。


$ sudo apt-get install autoconf automake xorg-dev xutils-dev mesa-common-dev libdrm-dev libtool
$ sudo autoreconf -i
$ sudo ./configure --prefix=/usr --disable-static

4. vidmodeproc.h のインクルード回避
後述するエラーが発生するため src/sis_driver.c を編集して対処しておきます。108 行目です。

変更前


    100 #define SIS_NEED_andSISIDXREG
    101 #define SIS_NEED_setSISIDXREG
    102 #define SIS_NEED_outSISREG
    103 #define SIS_NEED_MYMMIO
    104 #define SIS_NEED_sisclearvram
    105 #include "sis_regs.h"
    106 #include "sis_dac.h"
    107 
    108 #include 
    109 
    110 #include "sis_driver.h"

変更後


    100 #define SIS_NEED_andSISIDXREG
    101 #define SIS_NEED_setSISIDXREG
    102 #define SIS_NEED_outSISREG
    103 #define SIS_NEED_MYMMIO
    104 #define SIS_NEED_sisclearvram
    105 #include "sis_regs.h"
    106 #include "sis_dac.h"
    107 
    108 //#include 
    109 
    110 #include "sis_driver.h"

5. コンパイルの実行
コンパイルします。警告が表示されますがきちんと通ります。


$ sudo make
$ sudo make install

6. xorg.conf の編集
Lubuntu 16.04.01 の既定ではなにも記載されていませんでした。README の記述にしたがって編集しておきます。


$ sudo vi /etc/X11/xorg.conf 
$ cat /etc/X11/xorg.conf 
Section "Device"
   Identifier "XXXX"
   Driver "sisimedia"
EndSection

Section "Screen"
   Identifier "YYYY"
   Device "XXXX"
EndSection

7. OS 再起動を実施
再起動後解像度が向上していることを確認できると思います。

トラブルシューティング

README にあるとおりで手順は問題ないが、vidmodeproc.h が Lununtu 16.04 の xorg-dev パッケージに存在しないためこのヘッダファイルをインクルードしないようにコメントしておかないと以下のようなエラーが発生します。


$ sudo make
sis_driver.c:108:25: fatal error: vidmodeproc.h: そのようなファイルやディレクトリはありません
compilation terminated.
Makefile:531: ターゲット 'sis_driver.lo' のレシピで失敗しました
make[2]: *** [sis_driver.lo] エラー 1
make[2]: ディレクトリ '/usr/local/src/xf86-video-sis-stable-master/src' から出ます
Makefile:444: ターゲット 'all-recursive' のレシピで失敗しました
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ '/usr/local/src/xf86-video-sis-stable-master' から出ます
Makefile:376: ターゲット 'all' のレシピで失敗しました
make: *** [all] エラー 2

参考サイト

SiS ビデオカードの機種で Ubuntu 最新版が動きはじめた。 – ふうせん Fu-sen.
: VAIO type M での動作事例などが掲載されています。

スポンサーリンク