【发布时间】:2021-10-19 14:21:40
【问题描述】:
我有一条路:
export PATH=~icar/public/course/p6330/mpich4i/bin:$PATH
当我将此应用到命令行时,它会成功导出此目录中的文件或将我的当前目录路径设置为其内容。我试图在我的 makefile 中做同样的事情,但没有取得太大的成功。以下是我根据在网上找到的答案得出的结论,但我相信我遗漏了一些东西。
PATH = $PATH:~icar/public/course/p6330/mpich4i/bin:$PATH
all: p4
export PATH
p4: p4.c
mpicc -g -std=gnu99 -Wall -Werror p4.c -o p4
clean:
rm -rf *.o p4
【问题讨论】:
-
你是不是故意在
$PATH: ~icar/public/...里面加了空格?此外,您可能需要将 PATH 括在括号中(如$(CC)和$(LIBS))。另一种方法是使用完全限定的路径。 -
我去掉了被注释掉的不必要的行,去掉了空白。我仍然犯错误
-
“使用完全合格的路径”是不是这样的意思:export PATH=~icar/public/course/p6330/mpich4i/bin:$PATH
-
~icar是否意味着~/icar?您的 sn-p 将添加$PATH两次。您可能应该删除其中一个。 -
我不确定如何将它直接写入makefile。但是这一行在我的命令行中有效: export PATH=~icar/public/course/p6330/mpich4i/bin:$PATH 我不能直接将此行添加到我的makefile,因为它不起作用。这样做的正确方法是什么?