[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:20383] Re: OS-Versionとプログラムの互換性



こじま様
親切な応答,有難う御座います。
返事が,遅れましたこと,お詫び申し上げます。
−−−
私の当初の課題は, static リンクをすることにより,
(gccに-static オプションをつけて) 解決しました。
誠に,有難う御座いました。
---
実際には,plamo-3.0(Linux-2.4.19)で,開発して,
Linux-2.2.17, -2.0.35 で動作しました。
(-static を付けないと,やはり Segmentation Fault となります。)
- これは,もう無視してください。 -
−−−
自作のライブラリとlibcライブラリの -static の使い分けを
理解せずに適当にやっていたのが,いけなかったのです。
こじま様の親切な応答で,
http://www.linux.or.jp/JF/JFdocs/Glibc2-HOWTO.html
等を,再度読み直して,
自作のライブラリは,通常は,static ライブラリが作られること,
共有ライブラリ化するには,かなり面倒な作業が必要であること,
が分かりました。 次のような方法では,
gcc -O2 -o foo-lx foo.c libfoo..a -static -lm
libfoo..a は,-static SW が無くても 常に -static リンクされ
-ststic SWは,libc, libmに対して,static リンクをせよと言うこと
の様に理解しました。
nm,ldd, file で,対象のライブラリや実効ファイルを
自分なりに,調べて確認しました。
上記HOWTOでは,直接的には,解説してはいないのですが,
総合して,上記の理解に至りました(自信はありませんが)。
−−−
(雑誌等では,断片的なものが多い中で)
libc4, libc5, libc6 の説明は,まとまっており,大変有用だと思っています。
−−−
残った疑問(1)は,
libcのLinuxシステムにおける階層的な位置付けです。
一般的な階層を,
[1] [(layer) user space:   application program]
[2] [(layer) kernel space: kernel, kernel_module] (irq processを含む)
[3] [(layer) hardware ]
としたときに Libcは,[1],と[2] のどちらに位置付けられるのでしょうか?
header.h が,アプリ−ケーションがlibcを使うプロトコルの仕様的なもの,
libc自身は,[1]と[2]のインタ−フェ−スとして働くので,階層の位置付けは,
その文章の文脈で,どちらでも良い。
こんな理解のし方で良いのでしょうか?
しかし,libc を階層の中で,明記するとすれば,どちらが一般的でしょうか?
shell もこの意味では,どちらの階層に明記すべきかも悩んでいます。?
−−−
残った疑問(2)
userアプリケーションでlibcを使った場合には,
例えば,atoi() の様な場合には,libcだけで処理が閉じていると思われますが,
fopen() calloc() 等の場合には,kernelに処理を依頼するように思われ,
libcのバージョンとカーネルのバージョンの対応関係には限界があるように
思われるのです。
どの様な方法で,対処しているのでしょうか?
>こじま様
> うーん,,イマイチ話が通じてないようですが(苦笑),
はい,素人ですが,宜しくお願いします。

>このあたりは
> libc(glibc2) 側の問題であって,Linux のバージョンに依存する問題ではあ
> りません.
この具体的な疑問として,疑問(2)を書いていると,ご理解下さい。
−−−
以上ですが,どうか宜しくお願いします。
- - - - -
FM: 汐崎 廣義 < H.Shiozaki >
E-Mail: sios_hs@yahoo.co.jp
URL: http://www.geocities.jp/sios_hp/

----- Original Message -----
From: "KOJIMA Mitsuhiro" <kojima@linet.gr.jp>
To: <plamo@linet.gr.jp>
Sent: Thursday, August 14, 2003 10:37 AM
Subject: [plamo:20251] Re: OS-Versionとプログラムの互換性
=長文になるので,以下省略させて頂きます。
> --------
> こじま

Follow-Ups
[plamo:20385] Re: OS-Versionとプログラムの互換性, KOJIMA Mitsuhiro
References
[plamo:20132] Re: OS-Versionとプログラムの互換性, KOJIMA Mitsuhiro
[plamo:20243] Re: OS-Versionとプログラムの互換性, H.Shiozaki
[plamo:20244] Re: OS-Versionとプログラムの互換性, H.Shiozaki
[plamo:20251] Re: OS-Versionとプログラムの互換性, KOJIMA Mitsuhiro

[検索ページ] [メール一覧]
Plamo ML 公開システム