2017-07-28 7 views
0

私は、ユーザが使用するように設定されている一時ディレクトリの場所を知ろうとしています。 GNU Make manualディレクトリ変数セクションにTMPDIR言及:一般/ TMP(TMPDIR)を任意に洗浄されてもよいmakefileでユーザーの一時ディレクトリを取得しますか?

[runstatedir]ディレクトリは、おそらくリブート以外で洗浄されるべきではありません。

しかし、私はTMPDIRDirectory VariablesImplicit VariablesまたはAutomatic Variablesで文書を見つけることができません。

(私にとっては)やや驚くべきことに、検索は有用なヒットを生むものではありません。 PID(herehere)に基づいて一意の一時ディレクトリを作成することについてStack Overflowに関するいくつかの質問がありましたが、スクラッチ作業のためにビルド時に使用するはずの一時ディレクトリはありません。

GNU Makeはビルド中に一時ディレクトリを使用するための変数を提供していますか?もしそうなら、それは何ですか?

もしそうでなければ、ユーザー用に設定された一時ディレクトリを知るために何をすべきですか?この場合、私はその練習が何であるか不思議です。

答えて

2

TMPDIRは、標準のMakeまたはシェル変数ではありません。 一時ファイルパスを作成するときにtempnam(3)がチェックするものです(デフォルトは "/ tmp")。

gmakeはtempnamを使用しますので、$ TMPDIRを使用します。しかし、あなた(gmakeの呼び出し側)がそれを設定する人です。

+0

GNU makeはそのような変数を提供しません。 このような価値を発明したり発見する方法はありません。 誰かが* else *を設定すると、* TMPDIRが使用されます。 hth – Mischa

関連する問題