Windows2000で互換モードを使う方法

先日、不慮の事故でWindows98がインストールされたHDDをフォーマットしてしまいました。不運にもインストールCDが見つかりません。そこで、Windows2000の下位互換モードを試してみる事にしました。XPは標準で機能が備わっているので説明は割愛します。

Windows2000で互換性モードを使う (ITmedia)

コマンドプロンプトから以下のコマンドを入力。DLLをシステムに登録してください。

regsvr32 %systemroot%\apppatch\slayerui.dll

起動したい実行ファイルのショートカットを作成し、プロパティの「Compatibility」タブを開いてください。Windows95/98/NTの3タイプから互換モードを選べるようになります。

DLLの登録解除は以下のコマンドを入力のこと。

regsvr32 -u %systemroot%\apppatch\slayerui.dll

ちなみに、この方法は上位互換性がありません。XPで動くものは余程特殊な事をしてない限り2000でも動くはずですが、インストーラーチェックで弾かれることがあります。その場合は、インストールスクリプト(msi等) の中身を展開して、バージョンチェック部分を書き換えてください。

もっとも、Windows2000も2010年までの寿命ですけどね。

OSシェア10月版、Windows98の亡霊

毎月発表されるNET APPLICATIONS社のOSシェア。個人的に気になったので最新の10月分を調べてみました。

O/S Share by NET APPLICATIONS (2007年10月)

OSシェア2007年10月

依然、Windows98がインターネットにアクセスしてきていることに驚きを隠せません。既にお伝えした通り、2006年7月にWindows98のサポート期間は終了しています。もちろん、Windows98用のアンチウィルスソフトも新しい脅威には対応できません。そのような状態で自ら危険なネット世界に飛び込まなくてもいいのではないでしょうか。

UbuntuやOpenSUSEが俄かに注目されLinuxのユーザも増えています。そのLinux全ディストリビューションと同じくらいのシェアをWindows98が占めているのは由々しき事。サーバで閲覧拒否してでも、早急に使用を止めてもらったほうがいいとさえ考えてしまいます。

別の角度から見てみましょう。今度は時系列です。

OSシェア時系列2006年10月~2007年10月

Vistaは糞だ!と言われつつも急速な勢いでシェアを伸ばしています。逆に緩やかにWindows 2000/XPが減少しています。これらはまだサポート期間があるにも関わらずです。PC買い替え時にVistaに移行したのでしょうか。

DirectX10対応ゲームが増えれば、また大きくシェアが変わるかもしれませんね。

Linuxに統合環境Code::Blocksをインストールする方法

開発統合環境(IDE)の一つであるCode::Blocks(i386版)Ubuntu7.10 gutsy ja版にインストールする方法を紹介します。英語版も同様の手順。Code::BlocksはwxWidgetsをGUIライブラリに使うC/C++コンパイラで、nightly buildからはD言語等に対応しました。Visual Studioのような使用感の統合環境です。

※上から順を追ってコマンドを入力して行って下さい。スクロールバーに隠れてコマンドが読めない場合は、ブラウザの横幅を可能な限り広げてみて下さい。

始めに開発用パッケージ一式(g++)をインストールします。

$ > sudo apt-get install build-essential

デバッガをインストールします。

$ > sudo apt-get install gdb

wxWidgetsの最新版をインストールします。元からあるUbuntuリポジトリのものは古いのでwxWidgets公式のリポジトリから取得します。もし、Ubuntu側のパッケーを既にインストールしているのならば、不具合が起きないように念のため削除しておくといいでしょう。

wxWidgets公式リポジトリを追加します。[システム]-[システム管理]-[ソフトウェア・ソース]-[サードパーティのソフトウェア]に以下のURLを入力してください。distnameはお使いのバージョンに合わせて置き換えてください。

deb http://apt.wxwidgets.org/ distname main
>>distname = gutsy-wx, feisty-wx, edgy-wx

タブ[認証]にwxWidgets公式パッケージの公開暗号鍵を登録します。

$ > wget -q http://apt.wxwidgets.org/key.asc -O- | sudo apt-key add -

wxWidgetsをインストールします。バージョン番号はCode::Blocksに合わせ最新のもの置換してください。

$ > sudo apt-get install libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common

ここからメインのCode::Blocksのインストールです。現在、公式サイトからは安定版が配信されていません。nightly buildも長らくWindows用バイナリしか公開されていないようです。そこで、pasgui氏が用意してくれた公開リポジトリからLinux(i386)版をインストールしましょう。

pasgui氏のサイトLGPをリポジトリに登録します。wxWidgetsの登録方法と同様に以下のURLを追加してください。

deb http://lgp203.free.fr/ubuntu/ distname universe
>>distname = gutsy,feisty,edgy

必要ならソースコードのリポジトリも追加。

deb-src http://lgp203.free.fr/ubuntu/ distname universe
>>distname = gutsy,feisty,edgy

LGPの公開暗号鍵を登録します。

$ > wget -q http://lgp203.free.fr/public.key -O- | sudo apt-key add -

ソフトウェア・ソース リポジトリ一覧

Code::Blocksパッケージ一式をインストールします。

$ > sudo apt-get install libcodeblocks0 codeblocks libwxsmithlib0 codeblocks-contrib

以上でCode::Blocksのインストールが完了しました。[アプリケーション]-[プログラミング]-[Code::Blocks IDE]から起動できます。初回にインストール済みコンパイラを自動検出して設定してくれますので、表示されたウィンドウのOKボタンを押して作業を再開してください。

Code::Blocks nightly build on Ubuntu(i386)

それにしても煩雑な作業でした。Ubuntu公式リポジトリに登録されて、もっと楽にインストール出来るようにして欲しいです。2008年11月03日追記:Ubuntu 8.10以降はパッケージマネージャから公式版をインストール出来るようになりました。nightly buildでなくても構わないなら使ってみてはいかがでしょうか。

ちなみに、この他のIDEにKDevelopというのも存在します。こちらはパッケージマネージャに登録されていますので簡単にインストール可能です。

参考文献:How to download binaries (LGP) / Ubuntu packages of Code::blocks nightly builds (LGP) / Installing Code::Blocks nightly build on Ubuntu (Code::Blocks)

LinuxでIrrlichtをコンパイルする方法

Ubuntu7.10 gutsy ja版でIrrlichtをコンパイルする方法を紹介します。英語版でも手順は同じです。

Irrlichtサンプル 01.HelloWorld on Ubuntu7.10

まずはIrrlicht公式サイトからSDKをダウンロードし解凍てください。

Irrlicht SDK ダウンロード (公式)

解凍後、gcc等の開発用パッケージをインストールします。

$ > sudo apt-get install build-essential

コンパイルが可能になりました。source/Irrlichtをカレントディレクトリにしてmakeしてみましょう。

$ > make

OpenGLとX11関連の定義が足りないと言うエラーが出ると思います。そこで、これらの開発用ライブラリを追加します(既にランタイムだけはインストール済のものです)

$ > sudo apt-get install freeglut3-dev libxxf86vm-dev

再度makeをしてみればlib/LinuxにlibIrrlicht.aが無事作成されます。Irrlicht本体のコンパイルはこれで完了!

*もし、まだエラーが出たら?

include/IrrCompileConfig.hを使用環境に合わせて編集します。

$ > gedit include/IrrCompileConfig.h

OpenGLエラーなら_IRR_OPENGL_USE_EXTPOINTER_をdefineします。その他X11関連のエラーなら_IRR_LINUX_X11_VIDMODE_をコメントアウトするか、_IRR_LINUX_X11_RANDR_を定義してみてください。X11の定義はどちらかが有効になっていないと、フルスクリーンモードが使えなくなります。

最後にサンプルのコンパイル方法を補足しておきます。サンプルは該当ディレクトリでmakeすればbin/Linuxに実行ファイルが作成されます。しかし、01.HelloWorld以外はソースコードの修正が必要。大半のサンプルはデバイスが実行時選択方式になっているかDirectX9が指定されてします。このままでは上手く起動しません。ドライバタイプをvideo::EDT_OPENGLに固定してしまいましょう。

その他、compiz fusionの3Dデスクトップをお使いの場合は、IrrlichtをOpenGLデバイスで動かしたときに、タイトルバーが消失する不具合があります。ウィンドウが移動出来なくなるだけで特に問題でもないですが、鬱陶しいと思われたら[システム]-[設定]-[外観の設定]-[視覚効果]効果なしにしてください。

参考文献:Compiling On Linux (Irrlicht wiki) / Installing Irrlicht - Ubuntu (Irrlicht wiki)