0

私のmakefileが次のようになっているとしましょう:

CXX = g++

OGLLIBS = -lglut32 -lglu32 -lopengl32

projname : projname.o
    ${CXX} -o projname $< ${OGLLIBS}

では、g++ はどのディレクトリでライブラリを検索しますか? 私は仮定していた。しかし、そこにライブラリを配置しても、それらが見つからないという不平を言います(*.lib正しいファイルですか、それともUNIXは別のエンディングを使用していますか?!)

4

1 に答える 1

0
  1. フォルダ unix は、フォルダ /lib (システム lib 用) および /usr/lib を使用します。独自のライブラリまたは新しくインストールしたライブラリは、/usr/local/lib にある必要がありますが、コンパイラ フラグとして「-I/usr/local/lib」を追加する必要があります。 .

  2. 基本的に共有ライブラリの場合、ファイルの末尾は .so です

  3. ライブラリを探す LD_LIBRARY_PATH=/root-to-my-libs という変数を設定することで、他のディレクトリを追加してライブラリを探すようにコンパイラに指示できます。

于 2012-09-30T11:56:03.963 に答える