2017-08-23 15 views
0

FreeBSDでは、単純なMakefileを実行するたびに何らかの理由で、現在のPWDの下にobjディレクトリを作成しようとします。FreeBSD makeはobjディレクトリを作成します

私はthe default .OBJDIR for FreeBSD makeと関係があると思っていましたが、.OBJDIR: ./を設定してもこの動作は変わりません。

これはSConstructと競合するため問題を引き起こしますが、./objのすべての読み取り/書き込み権限を取り除くことで対処できましたが、なぜ私はmakeを実行するたびに理由を知りたいのですかディレクトリが存在しない場合は./objディレクトリを作成します。

+1

Makefileなしでは、あなたの問題を理解するのが難しいでしょう。 [MCVE](https://stackoverflow.com/help/mcve)を提供できますか? –

+1

[関連する質問](https://stackoverflow.com/q/45675365/2371524)FreeBSD makeは '.OBJDIR'に対して' chdir() 'を試みるだけで、作成はしません。あなたのMakefileには他にも理由があるはずですので、@ RenaudPacaletのコメントは2番目です。 –

答えて

0

makeは、${.OBJDIR}を自動的に作成しません。あなたのMakefileの中に何かが明示的に作成されていなければなりません。

makefileやmake -runの出力を投稿できますか?

MAKEOBJDIRPREFIXまたはMAKEOBJDIRを環境変数またはコマンドライン(/etc/make.confに設定することはできません)に設定すると、変数の値に影響を与えることができます。

詳細はmake(1)を参照してください。

関連する問題