- - PR -
実際に使っているシェル
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2002-12-02 15:07
> DynamicなのかStaticなのかってのは
> どの様に確認出来るのでしょうか? 通常shellはlibcとかncursesとかにDynamic linkしてるので、 通常の方法で判断するのは無意味です。 zshの場合、モジュールに分割されています。これらは/usr/local/lib/zsh以下に 置かれるはずです(RPMでインストールするとどうなるのか知りません)。 zshのコンパイル時にモジュールを動的にリンクするか、静的に取り込むのかを 選択できます。 静的に取り込んだものは、 -rwxr-xr-x 2 root sys 1439660 5月 29日 2002年 zsh* 動的にリンクしたものは、 -rwxr-xr-x 2 root other 455828 6月 7日 11:16 zsh ただし、上の2つはプラットホームが違います(上はHP-UX、下はSolaris)。 HP-UXでは動的リンクで問題があったため、コンパイル時に静的に取り込みました。 (全てのモジュールを静的に取り込んだわけではなく、使うものだけを取り込んだ) ちなみに、私は、zshを使う前は、Solarisではkshを使ってました。少数派ですかね。 | ||||
|
投稿日時: 2002-12-02 15:26
こんにちは。森蔵です。
私も以前kshを使ってました。カスタマイズすると使いやすくて手になじんでましたが 現在の所でtcshに乗り換えました ![]() 特にランスクリプトを編集しなくても最低限の機能が使えるので気に入ってます。 ただ、bashがあればbashが使いたいですね。(シェルは標準のものしかいれては いけない事になってるのです。:Solaris8使用) では。 | ||||
|
投稿日時: 2002-12-02 16:34
>>>t-wata様
私は滅多にコンパイル作業をしないので 勉強になります。 比べてみるとこんなに違うものなんですね。 なお、rpmでは (Redhat7.3、Turbo7で確認) /usr/lib/zsh/バージョン/zsh/に モジュールが置かれている様です。 .soのファイルですよね? >>>森蔵様 私はcsh(Solarisを触っていた頃)と bash(Linuxで)しか殆ど触れたことがないので そういった沢山のシェルの遍歴を持っている方に 少し憧れてしまいます ![]() | ||||
|
投稿日時: 2002-12-03 19:38
$ file /bin/bash /bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), stripped これではダメでしょうか。 | ||||
|
投稿日時: 2002-12-03 20:00
私は bash しか使ったことがありませんが、不満はありません。非常に快適です。
$ ldd `which bash` libdl.so.2 => /lib/libdl.so.2 (0x40026000) libc.so.6 => /lib/libc.so.6 (0x4002a000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000) | ||||
|
投稿日時: 2002-12-03 20:36
isamさん、yokaさん、
ちゃんと書いとけば良かったのですが、私が言いたかったのは、 1. zshは、実行可能ファイルだけでなく、複数のzshのモジュールをダイナミックリンクしている(このため、実行可能ファイル自体は小さく見える) 2. zshのコンパイル時に、それらzshモジュールをスタティックリンクすることもできる(モジュールをスタティックリンクにすると、実行可能ファイルは大きくなる) 1なのか、2なのかをldd zshやfile zshでは区別できないという話です。 何か方法があるかも知れませんが、少なくとも、fileやlddでは出力結果が 1の場合も2の場合も同じになってしまいます。 | ||||
|
投稿日時: 2002-12-04 15:24
t-wata さん失礼いたしました。
ライブラリではなく、zsh のモジュールの話だったのですね。 |