岩城です。 # 結果 # ports/emacsのデフォルトオプションでエラーなく表示されるようになりまし た。どうもありがとうございます。
# 行ったこと # 私のX環境はxinit起動のctwm/cshなので.xsessionはありません。そこで、.loginに eval `dbus-launch --csh-syntax` を書きました。その後、一端logoutしてからloginし、xinitの後、xtermから emacsを起動しました。 # 感想 # 上記の変更をしていないときは、Xを起動した後に dbus-launch --autolaunch=XXX --binary-syntax --close-stderr で自動的に起動されているのが、psコマンドで確認できました。変更後はdbus- launchは確認されません。dbus-launchの自動起動は、環境変数 DBUS_SESSION_BUS_ADDRESSが設定されていないためのようです。ひょっとした ら、このとき指定されている--binary-syntaxを--csh-syntaxや--auto-syntaxに できれば、今回の小細工なしでも大丈夫なのかもしれません。今回の対応法は、 「それなりに早い時点で予め環境変数DBUS_SESSION_BUS_ADDRESSを設定すること によって、変なオプションでdbus-launchを起動させない」ということかな、と 思っています。でもこれではユーザーごとに対応が必要になるので、dbus- launchの自動起動時のオプションを変更できれば良いのになぁ、と思っていま す、が、なかなかこれが、、、 以上、 根本的にどうすれば良いのかはわかりませんが、応急処置はできました。 ありがとうございました。 (2012/10/23 2:49), kenchan wrote: > kenchanといいます。 > > GLib-WARNING 〜のメッセージで以前検索をしたときに、以下のようなコマンドを > .xsessionに入れて解決した覚えがあります。 > > eval `dbus-launch --sh-syntax` > > Xをcsh系なら次のようにすれば良かったと思います。 > eval `dbus-launch --csh-syntax` > > 会社のマシンなので、もしかしたらパンチミスしているかもしれませんが... > > 上記のコマンドを実行するとメッセージも出力されなかったと思います。 > > 何となくの記憶では、emacs-23の頃はメッセージだけが出力されていて、 > fvwmは固まらなかったと思います。 > emacs-24に上げたとたんに、メッセージも出力されるしfvwmも固まるし... > > 参考にしてみてください。 > > Mamoru Iwaki wrote: >> 岩城です。 >> >> #何年ぶりかの投稿です。 >> >> 8.3-STABLE r241625 amd64で、portsからemacsをインストールして来ました。 >> いつからかは忘れましたが、私も皆さんと同様の症状になっています。 >> >> (2012/10/04 15:28), Akihiro HIRANO wrote: >>> (2012/10/04 12:57), Hisao Osawa wrote: >>>> たかの様、情報ありがとうございます。 >>>> DBUS,GCONF,GSETTINGをオプションから外してemacsをportsからインストール。 >>>> hald,dbusも非起動 >>>> という条件では少なくとも問題は起こらなくなったようです。 >>> >>> おお!と思って、DBUS,GCONF,GSETTINGをオプションから外して >>> emacsをportsから再インストールしたところ、問題は収まりました。 >>> halやdbusは何も変更しておりません。 >> >> 私も試してみました。haldとdbusは起動しています。 >> >> Case 1) デフォルトからGCONF,GSETTINGを外すと、 >> warningなど表示されずにemacsが起動しました。 >> >> Case 2) デフォルトからGSETTINGを外すと、 >> 下記と同様のwarningが表示されますがemacsは起動しました。 >> >> (2012/10/04 12:57), Hisao Osawa wrote:> >>>> From: "Hisao Osawa" <osawa.hi...@nikon.co.jp>さん >>>>> (emacs:28579): GLib-WARNING **: In call to g_spawn_sync(), exit >> status of a child process was requested but SIGCHLD action was set to >> SIG_IGN and ECHILD was received by waitpid(), so exit status can't be >> returned. This is a bug in the program calling g_spawn_sync(); either >> don't request the exit status, or don't set the SIGCHLD action. >> >> >> DBUSはデフォルトのままで有効にしてあるので、DBUSは無実かなと思います。 >> >> >> #残念ながら修正パッチを作れるほどの理解はありません。m(__)m >> #portsがフリーズされる前に誰か何とかして〜(^^; >> --- >> -- ----- Mamoru Iwaki Japan