从Makefile调用jam不起作用

从Makefile调用jam不起作用,makefile,cygwin,jam,Makefile,Cygwin,Jam,在我的makefile中,我试图进入另一个目录,并使用如下内容调用jam: jam-build: cd <somedirectory> && jam <target> jam构建: cd&jam 这不起作用,但导致“目标未知。请编辑'Jamrules'。”即使命令行上完全相同的命令工作正常。所以我知道贾姆能找到目标 我也试过了 jam-build: sh -c "cd <somedirectory> && j

在我的makefile中,我试图进入另一个目录,并使用如下内容调用jam:

jam-build:
    cd <somedirectory> && jam <target>
jam构建:
cd&jam
这不起作用,但导致“目标未知。请编辑'Jamrules'。”即使命令行上完全相同的命令工作正常。所以我知道贾姆能找到目标

我也试过了

jam-build:
    sh -c "cd <somedirectory> && jam <target>"
jam构建:
sh-c“光盘和卡纸”
和具有相同结果的变化。同样,这在命令行中也可以完美地工作

任何其他命令(ls、ps、cat、pwd)代替“jam”按预期工作

更新:即使在中创建Makefile并在其中运行make,也会得到相同的结果

任何关于为什么会发生这种情况的想法都将不胜感激。当然,还有一些值得尝试的事情


我正在用最新的gnu版本FT jam 2.5.2运行cygwin。

Jamrules文件位于
中,并在shell works的该目录下运行
jam jam build
jam
?但是在makefile命令中使用相同的
不起作用?
jam--version
(或等效版本)和
type-a jam
在shell和makefile中返回了什么?完全一样:$type-a jam和&jam-v jam是/usr/bin/jam FT jam 2.5.2。OS=CYGWIN。和$make cd&&type-a-jam&&jam-v-jam是/usr/bin/jam-FT-jam 2.5.2。OS=CYGWIN非常奇怪。。。