OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

スタティックライブラリの使い方

  • すぐに回答を!
  • 質問No.136925
  • 閲覧数661
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 88% (361/410)

Linuxで使えるCのライブラリを落としてきたのですが、使ったことがないので戸惑っています。
パッケージは、makefile , .c , .h の3つで、makeするのはできました。で、ライブラリ.a が出力されまして、このファイルを使え!と説明書にはあるのですが、この先がよくわかりません。
とりあえず、出力されたライブラリを/usr/lib あたりに入れて、自作のプログラムで先ほどのライブラリのヘッダをインクロードするところまではできたのですが・・・。

コンパイルすると、/usr/bin/ld: cannot find -ライブラリ

と出てしまいます。教えていただけますでしょうか。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル14

ベストアンサー率 50% (1122/2211)

ライブラリの名前はどんなんですかね。

もし、小文字の lib から始まっている名前、例えば、libXXX.a なんていう
名前になっていて、それが /usr/lib の下にあるんだったら、それを使う
プログラムのリンクのときに -lXXX と指定します(頭の lib を取って、
ファイルの末尾 .a も取る)。

例えば、

% cc -o sample sample.c -lXXX

です。-l (小文字のエル)と、ライブラリ名 XXX の間には空白を *入れない* こと。

もし、lib で始まっていないライブラリであれば、直接フルパスで指定します。
例えば、ライブラリが XXXXX.a という名前で /usr/lib の下においてあるの
だったら、

% cc -o sample sample.c /usr/lib/XXXXX.a

という感じです。
お礼コメント
pythian

お礼率 88% (361/410)

やはり場所の指定の問題でした。実は、ご回答を頂く前にいろいろ試行錯誤しまして、-Lで場所を指定したら無事にコンパイルできました。なかなか奥が深そうでちょっと楽しみです。ありがとうございました。
投稿日時 - 2001-09-17 17:36:30
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ