環境変数 GL_USEGLU の豆知識。
CLIENT_LOCALEを UTF-8 ベースのロケールや、GB18030-2000のロケールにセットして
Informix 4GL のフルスクリーン・アプリケーションを動かす場合、環境変数GL_USEGLUを1
に設定しないと画面が崩れます。
GL_USEGLUは、Informixに組み込まれているIBM GLUライブラリー ( Unicodeサポートのた
めにIBMが開発した汎用ライブラリー)を使用するか否かを指定する環境変数です。この環
境変数を設定してあると、Informixは、GLSライブラリーではなく、IBM GLU ライブラリーを
使って文字操作の処理を行います。IBM GLUライブラリーを使用すると、Unicodeで決めら
れている並べ替え順序規則などを使用できるようになります。
Client SDKで提供されているAPIのレベルでは、Informixが以前から提供しているGLS
ライブラリーと、IBM GLUライブラリーのどちらを使用しても最低限の機能を使用することがで
きます。なので、GL_USEGLUは、UNICODE準拠の並べ替え規則などを必要としないので
あれば必須ではありません。dbaccess等では正常なのに、4GLアプリだとおなしくなるとかの場合など、これが原因の場合が多いです。
Informix 4GL ( .. その他テキストベースのフルスクリーンアプリケーション ) のフルスクリーン画面は、IBM GLUライブラリーを使用しないと、UnicodeやGB18030ベースのロケールで画面が崩れてしまいますので注意が必要です。
環境変数はコンパイル時にも設定されている必要が有ります。4GL のフルスクリーン・アプリケーションについては、GL_USEGLU を1に設定した状態で再コンパイルする必要があります。
コメント