GdkPixbuf-WARNING の解決方法

画像を扱うGTKアプリケーションで

GdkPixbuf-WARNING **: Can not open pixbuf loader module file '/usr/lib/gdk-pixbuf-2.0/2.10.0./loaders.cache': No such file or directory

というエラーが出ることがあります。

解決方法を調べると

Linux de kai @ wiki - Linuxでkai(kai設定編)/kaiインストール/kaiengine.sh - @ウィキモバイル

/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache を作成します。

ATOKX3のツールバー真っ白を修正する » TAM的残念日記

ln -s /usr/lib32/gdk-pixbuf-2.0/2.10.0/loaders.cache
        /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache.32

この辺はなんか基本的に対処療法にしかなってないの|・ω・)


Linux de kai @ wiki - Linuxでkai(kai設定編)/kaiインストール/wxGTK/slackware64 - @ウィキモバイル

$ su -
# GDK_PIXBUF_MODULEDIR=/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders /usr/bin/gdk-pixbuf-query-loaders > /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
# exit

これは結構いい線いってるみたいなので、もうちょっと調べてみました。

すると
GDK_PIXBUF_CACHE_FILE GDK_PIXBUF_MODULE_FILEって変数がどうもそれっぽい。

ローダモジュールの場所を参照していて、それがGDK_PIXBUF_MODULEDIR らしい。

libpixbufloader-*.so とか .la ってのがそうね
これも、指定。

gdk-pixbuf-query-loaders の実行が少し間違ってるみたいで

gdk-pixbuf-query-loaders $GDK_PIXBUF_MODULEDIR/*
            > $GDK_PIXBUF_MODULE_FILE

これが正しいみたい|・ω・)
これを実行する前に環境変数を書き換え

というわけで、mac OSX の場合は、 .bash_profile をまた書き換え

GDK_PIXBUF_MODULE_FILE=/loaders.cacheのあるフォルダ/loaders.cache
GDK_PIXBUF_MODULEDIR=/loaders.cacheのあるフォルダ
export GDK_PIXBUF_MODULE_FILE GDK_PIXBUF_MODULEDIR

|ノω・) これで一日悩んでしまった

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です