xhost経由でFreeBSDからUbuntuにEmacsを実行しても、ツールバーのアイコンはロードされません。

xhost経由でFreeBSDからUbuntuにEmacsを実行しても、ツールバーのアイコンはロードされません。

FreeBSDに接続されているコンピュータを使用しており、ssh [ip] -Xemacsは正常に起動しますが、これが起こり、すべてのアイコンは赤いXの小さな紙片です。

> emacs

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'document-new' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'document-open' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'image-missing' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'window-close' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'document-save' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'edit-undo' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'edit-cut' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'edit-copy' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'edit-paste' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

(emacs:22812): GdkPixbuf-WARNING **: Bug! loader 'png' didn't set an error on failure

(emacs:22812): Gtk-WARNING **: Error loading theme icon 'edit-find' for stock: Internal error: Image loader module 'png' failed to complete an operation, but didn't give a reason for the failure

なぜこれが起こるのか知っている人がいますか? GVIMは正常にロードされます。

答え1

たぶんEmacsを実行しているコンピュータのGTK設定に問題があるのでしょうか? Qt Center フォーラムの誰かが Qt Widget Toolkit に接続すると、GdkPixbuf ライブラリの同様の警告に対する解決策を提供するようだとわかりました。Qtセンター]

この記事では、Emacsを実行しているシステムでrootとして実行することをお勧めします。

update-mime /usr/share/mime/
update-mime-database /usr/share/mime/
gtk-update-icon-cache /usr/share/icons/<ThemeName>

個人的には、Ubuntuでパッケージのインストール後にスクリプト中にこれらのシェルコマンドを実行できると仮定したいと思います。しかし、おそらくこれはすでに機能かもしれません。一つあるマニュアルページUbuntuでgtk-update-icon-cacheシェルコマンドとして使用できます。

それともGTKなしでEmacsを構築することは可能ですか? Debianメンテナンスガイドソースから Debian パッケージをビルドするためのdebian/rulesファイルおよび Debian コマンドに関するドキュメントを提供します。debuildDebian タイプディストリビューションのソースパッケージは、次のapt-getように検索できます。チュートリアルの構築] Emacs WikiのソースからEmacsを構築する方法に関するドキュメントもあります。Emacsの構築]

答え2

私の考えでは、FreeBSDシステムにこのアイコンのPNGファイルがインストールされていないようです。特に私のFreeBSD 10システム(ssh -Xで利用可能)は次のとおりです。

/usr/local/share/icons/gnome/24x24/actions/document-new.png
/usr/local/share/icons/gnome/24x24/actions/document-open.png
/usr/local/share/icons/gnome/24x24/actions/document-save.png
/usr/local/share/icons/gnome/24x24/actions/edit-copy.png
/usr/local/share/icons/gnome/24x24/actions/edit-cut.png
/usr/local/share/icons/gnome/24x24/actions/edit-find.png
/usr/local/share/icons/gnome/24x24/actions/edit-paste.png
/usr/local/share/icons/gnome/24x24/actions/edit-undo.png
/usr/local/share/icons/gnome/24x24/actions/window-close.png
/usr/local/share/icons/gnome/24x24/apps/system-file-manager.png

初期パスは異なる可能性があるため、locateデフォルト名に対してを実行します(例:)locate edit-find.png

また、truss -o /tmp/truss.out emacs入ったらすぐに出てください。次に、次を実行します。

grep 'png"' /tmp/truss.out 

pngが見つかったかどうか教えてくれます。そうでない場合、このファイルはgnome-icon-theme-3.6.2に属しているため、そのファイルをインストールするとバージョン番号が調整される可能性があります。

関連情報