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

[plamo:07923] Re: プリンタドライバをmakeできない



中本@大阪です。

# プログラミングは専門でないけど、たまたま勉強中で
# 手元に本があったので。。。

> salmoon@よこはまです
:
> > みたいに -lm の位置を動かしたらうまくいくかも知れません。
> > 
> 
> でもどうして -lm の位置でうまくいったりいかなかったりするのでしょうかね。

-l というのはライブラリを指定するオプションなのですが、指定方法が
特別わかりにくいもの、なのだそうです。

「まず、-l 以外のオプションはいずれもファイル名の前に指定されるのに
  対し、-l はコマンドの最後で、かつ、ファイル名の後に指定しなくては
  ならない。以下にその典型的なコマンドの例を示す。入力はオブジェクト
  ファイルなので、コマンドはリンカを実行 ( 当然、この時点でライブラリ
  に読み込まれる ) しているだけである。

  % gcc -o plot main.o plot_line.o -lm

  -lm オプションは、数学ライブラリを指定する。m が何の略かは後述する。
  -lname ( name は斜体 ) を指定すると、システムは標準的なライブラリが
  保存されているディレクトリ ( 通常は /usr/lib ) から libname.a を
  探す。したがって、/usr/lib/libm.a から数学ライブラリを探す。」

と書いてあります。

文献は

Mike Loukides, Andy Oram 著, 引地 美恵子, 引地 信之 訳, GNU ソフトウェア
プログラミング - オープンソース開発の原点, 株式会社オライリー・ジャパン
発行 ( 1999 ) ISBN4-900900-20-6
 
これの p.98-p.99。
本を読んでそのまんま、引用しているだけなので、僕自身は意味をよく
わかっていませんが ^_^;;


-- 
Kenichi Nakamoto
   hinako@netfort.gr.jp, kennaka@pearl.ocn.ne.jp

References
[plamo:07922] Re: プリンタドライバを makeできない, Yuji Touya

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