Makefile 从另一个目录运行configure、make、make install

Makefile 从另一个目录运行configure、make、make install,makefile,configure,automake,Makefile,Configure,Automake,有一个可能的问题,我无法更改/tmp之外的目录,我在temp中有一个文件夹,我需要在其中运行configure、make和make install,就像我在文件夹中一样 一些问题: 当我在文件夹外运行configure时,Makefile会出现在我的CWD中。我该怎么做 make-C./directory/是制作的方法吗 关于如何像在文件夹中一样完成这些命令,有什么想法吗?一个想法(未经测试)是将您的命令与cd连接在一起,比如cd/tmp&&configure,这是个好主意。谢谢有点黑,但它

有一个可能的问题,我无法更改/tmp之外的目录,我在temp中有一个文件夹,我需要在其中运行configure、make和make install,就像我在文件夹中一样

一些问题:

  • 当我在文件夹外运行configure时,Makefile会出现在我的CWD中。我该怎么做
  • make-C./directory/是制作的方法吗

关于如何像在文件夹中一样完成这些命令,有什么想法吗?

一个想法(未经测试)是将您的命令与
cd
连接在一起,比如
cd/tmp&&configure
,这是个好主意。谢谢有点黑,但它可能会工作
pushd目录&&./configure&&make&&popd
(作为ansible中的shell行)比使用cd更好。如果make是唯一的问题,
make-C目录
就足够了。pushd/popd解决方案存在问题:并非所有shell都支持它,如果命令失败,则popd不会运行。更安全、更可移植、更简单的方法是使用
()
在子shell中运行cd和命令,如下所示:
(cd/tmp/foo&&./configure&&make&&make install)
一旦子shell退出,cd操作将撤消。