【问题标题】:FreeBSD make creates obj directoryFreeBSD make 创建 obj 目录
【发布时间】:2017-09-20 03:01:23
【问题描述】:

在 FreeBSD 下,由于某些奇怪的原因,每次我执行一个简单的 Makefile 时,它都会尝试在当前 PWD 下创建一个 obj 目录。

我认为这可能与the default .OBJDIR for FreeBSD make 有关,但设置.OBJDIR: ./ 不会改变这种行为。

这给我带来了问题,因为它与 SConstruct 冲突,但我设法通过删除 ./obj 的所有读/写权限来解决这个问题,但是我仍然想知道为什么每次运行 make,如果./obj 目录不存在,它会尝试创建它。

【问题讨论】:

  • 没有 Makefile 就很难理解你的问题。你能提供一个MCVE吗?
  • This related question 解释说 FreeBSD make 仅尝试将 chdir() 转换为 .OBJDIR,但不会创建它。您的 Makefile 中一定有其他原因,所以我支持 @RenaudPacalet 的评论。

标签: makefile freebsd


【解决方案1】:

make 不会自动创建任何 ${.OBJDIR} - 您的 Makefiles 中的某些内容必须明确创建(或尝试创建)。

您能否发布 makefile 和/或 make-run 的输出?

您可以通过在环境或命令行中设置MAKEOBJDIRPREFIXMAKEOBJDIR 来影响变量的值(两者都不能在/etc/make.conf 中设置)。

更多详情请见make(1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-25
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 2014-01-15
    • 2018-11-11
    • 2011-10-23
    相关资源
    最近更新 更多