我在开放的 sun-grid 引擎 (gridengine-GE2011.11) 上使用 qmake (v3.82) 时遇到问题,我使用以下 makefile 代码缩小了问题范围:
export FOO = $(shell echo bar | sed 's/bar/foobar/g')
all: echo1 echo2
echo1:
echo $(FOO)
echo2:
echo $(FOO)
使用以下命令:
qmake -l arch=linux-x64 -inherit -- -j 2 -f export.mk
我得到这个输出:
echo foobar
dynamic mode
foobar
qmake: *** remote_status: No child processes. Stop.
qmake: *** Waiting for unfinished jobs....
qmake: *** remote_status: No child processes. Stop.
它不使用 export
工作 它不使用 $(shell) 命令中的管道
它工作 它使用 FOO:=$(shell) 工作(带有一个 ':')
它工作在 qmake 命令中使用 -j 1 (或不并行化)
它使用常规制作
正是这些因素一起搞砸了一些事情,而这恰好是我的 makefile 中罕见的情况。
有谁知道是什么原因导致这个或知道修复?