電子書籍の厳選無料作品が豊富!

http://0xcc.net/blog/archives/000107.html
http://linuxjf.sourceforge.jp/JFdocs/Program-Lib …

UnixやLinuxで共有ライブラリのコンパイル・ビルドに-fPICや-KPICのオプションは必須ですか?

共有ライブラリ(起動時自動的にロード)で必須で、

動的ライブラリ(実行中に関数を使ってロード。)の場合、不要という事でしょうか?

A 回答 (2件)

>>あえていうなら共有することがあるか、ないか。


>スタティックライブラリ(アーカイブファイル .a)も
>ある意味で共有ですが、
>これは、含まれませんね。

共有ライブラリの「共有」はメモリにロードしたコード部分のプロセス同士での共有の事なのでスタティックライブラリは含まれませんね。

ご自分でも書かれている
http://0xcc.net/blog/archives/000107.html

はよく書かれてると思いますから、よく読んでみるといいと思いますよ。
    • good
    • 1

必須というわけではないですが指定した方がよいです。



>共有ライブラリ(起動時自動的にロード)で必須で、
>動的ライブラリ(実行中に関数を使ってロード。)の場合、不要という事でしょうか?

そのような区別ではないです。
あえていうなら共有することがあるか、ないか。

詳しく知りたいということになるとC言語ではなく、マシン語やローダーがライブラリをロードするときどのような事を行っているかの話になります。

この回答への補足

どうもありがとうございます。

「必須」とか「必要」とか、説明しているサイトが多い様な・・・。

>あえていうなら共有することがあるか、ないか。
スタティックライブラリ(アーカイブファイル .a)も
ある意味で共有ですが、
これは、含まれませんね。

補足日時:2012/06/12 08:01
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!