首页 > 解决方案 > DYLD_LIBRARY_PATH 环境变量未转发到 macOS 上 Makefile 中的外部命令

问题描述

我正在make test为 macOS 上的 Perl 模块调试一些测试失败 ()。我发现问题似乎是环境变量DYLD_LIBRARY_PATH没有转发到从Makefile. 这是一个最小的例子:

.PHONY: all
all:
    @echo $$DYLD_LIBRARY_PATH

在来自 Bash shell 的 Linux 上,我可以这样做(或者更确切地说,在 Linux 上替换DYLD_LIBRARY_PATHLD_LIBRARY_PATH用于此目的的哪个):

$ export DYLD_LIBRARY_PATH=bar
$ make
bar

但是,如果我Makefile在 macOS Catalina 10.15.5 上运行相同的程序,则该变量DYLD_LIBRARY_PATH为空:

$ export DYLD_LIBRARY_PATH=bar
$ make
# [No output]

知道造成这种差异的原因是什么吗?

标签: linuxmacosmakefilemacos-catalina

解决方案


推荐阅读