ノード:Installing libraries, 次:, 前:Debugging executables, 上:Using libtool



ライブラリのインストール

libtoolが無いシステムでライブラリをインストールすることは,全く簡単で す... それらをその場所にコピーするだけです.1

     burger$ su
     Password: ********
     burger# cp libhello.a /usr/local/lib/libhello.a
     burger#
     

おっと,ranlibコマンドを忘れないでください.

     burger# ranlib /usr/local/lib/libhello.a
     burger#
     

libtoolのインストールは,同様に全く単純です.通常使用する, installcpコマンドをそのまま使用してください (see Install mode).

     a23# libtool --mode=install cp libhello.la /usr/local/lib/libhello.la
     cp libhello.la /usr/local/lib/libhello.la
     cp .libs/libhello.a /usr/local/lib/libhello.a
     ranlib /usr/local/lib/libhello.a
     a23#
     

アンインストールでlibtoolを助け(see Uninstall mode),リンクし (see Linking executables),dlopenでプログラムを助ける (see Dlopened modules)ため,libtoolのライブラリlibhello.la もインストールされることに注意してください.

共有ライブラリの例は,以下のようになります.

     burger# libtool --mode=install install -c libhello.la /usr/local/lib/libhello.la
     install -c .libs/libhello.so.0.0 /usr/local/lib/libhello.so.0.0
     install -c libhello.la /usr/local/lib/libhello.la
     install -c .libs/libhello.a /usr/local/lib/libhello.a
     ranlib /usr/local/lib/libhello.a
     burger#
     

ライブラリインストール時にBSD互換のinstallプログラムを使用する場合, -s(シンボルのstrip)フラグを指定すると安全です.libtoolは -s フラグを無視する,またはライブラリからデバッグとコンパイラシ ンボルのみをstripするプログラムを実行します.

ライブラリを一度配置すると,使用する前に必要な追加のコンフィグレーショ ンを行います.最初に,ビルド時に使用した-rpathフラグと同じ場所 に,ライブラリが実際にインストールされていることを確かめる必要がありま す.

そして,libtool -n --mode=finish libdirを実行すると,行う ことのヒントが与えられるはずです(see Finish mode).

     burger# libtool -n --mode=finish /usr/local/lib
     PATH="$PATH:/sbin" ldconfig -m /usr/local/lib
     -----------------------------------------------------------------
     Libraries have been installed in:
        /usr/local/lib
     
     To link against installed libraries in a given directory, LIBDIR,
     you must use the `-LLIBDIR' flag during linking.
     
      You will also need to do one of the following:
        - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
          during execution
        - add LIBDIR to the `LD_RUN_PATH' environment variable
          during linking
        - use the `-RLIBDIR' linker flag
     
     See any operating system documentation about shared libraries for
     more information, such as the ld and ld.so manual pages.
     -----------------------------------------------------------------
     burger#
     

これらのステップを完了した後,インストールされたライブラリの使用開始が 可能になります.作成されたライブラリに依存する実行形式もインストールで きます.


脚注

  1. 偶発的にライ ブラリをstripしないでください,そうすると使用不可能になります.