PATH
の違いを理解するのに少し難しいことがありますLD_LIBRARY_PATH
。 pkg.tclファイルが必要なインストール設定がありますが、そのパスをどこに追加するのかわかりません。PATH
またはでなければなりませんかLD_LIBRARY_PATH
?
答え1
Unixシステムは、さまざまなディレクトリにさまざまな種類のファイルを配布する傾向があります。たとえば、実行可能ファイルは通常(bin
、、、、/bin
... )という名前のディレクトリにあります。歴史的に、実行可能ファイルはバイナリファイル(機械語コード)なので、これはバイナリを意味しますが、スクリプトもあります。実行可能ファイルを含む複数のディレクトリがあり、ディレクトリを動的に追加および削除することが便利です(たとえば、複数の実行可能アプリケーションをテストする場合は、実行可能ファイルの検索パスに一時的に追加できます)。 。。名前を指定してプログラムを実行すると、シェルは変数に記載されているディレクトリ(コロンで区切られたディレクトリのリスト)でそのプログラムを探します。/usr/bin
/usr/local/bin
bin
PATH
PATH
一部のプログラムが名前で検索する他の種類のファイルにも同じメカニズムがあります。これはいくつかの一般的なPATH
同様の変数です(私が提供するパスの例は、アイデアを提供するためにシステムで見つけることができるパスとまったく一致しません)。
PATH
:実行可能ファイル(例/home/username/bin:/usr/local/bin:/usr/bin:/bin
:)。MANPATH
:manページ(例/usr/local/man:/usr/man
:)。LD_LIBRARY_PATH
:ネイティブコードベース(Linuxでは通常、検索パスに/usr/local/lib
、この変数の値に加えて他の値が含まれます)/usr/lib
。/lib
名前はLD
以下に由来します動的私OADよく、ライブラリがロードされるシステムコンポーネント動的にリンクされた実行可能ファイル。PERL5LIB
:Perlライブラリ(例/usr/local/lib/site-perl:/usr/lib/site-perl:/usr/lib/perl:/usr/share/perl
:)。PYTHONPATH
:Pythonライブラリ(例/usr/local/lib/python:/usr/lib/python:/usr/lib/python2.6
:)。TCLLIBPATH
:TCLライブラリ(例/usr/local/lib/tcltk:/usr/lib/tcltk
:)。
そのためpkg.tcl
、スタンドアロンの実行可能ファイルがある場合は、実行権限を付与してに入れます$PATH
。 TCLプログラムによってロードされたTCLライブラリーの場合$TCLLIBPATH
。
答え2
PATH
実行可能プログラムのディレクトリを指定するために使用されます。LD_LIBRARY_PATH
ライブラリのディレクトリを指定するために使用されます。