Am 17.01.2013 um 09:06 schrieb Pierre Lindenbaum:
> - What's the best way to run qmake as a daemon ?
>
>> What do you mean by "run qmake as a daemon" -
>>
>
> something like;
>
> #with a '&' at the end
> $ qmake [arguments] &
>
> I'd like to close my terminal and let qmake run as a daemon. But I wonder if
> that's a good practice
>
>> How did you submit the job?
>
>
> qmake -l arch=lx24-amd64 -cwd -v PATH -- -I /my/path -f mymake.mk -j 16
> target.name
>
>>> - How should I kill qmake ? I currently use a simple Ctrl-C . Will SGE
>>> kill the running processes of the Makefile ?
>> It doesn't quit after the compilation finished?
>>
> compilation ? you mean after the targets have all been processed ?
> Yes it exists, using qmake with '-j N' I just wonder if I should worry about
> the 'N' processes running or if SGE kills them.
>
> - qmake doesn't support the $(eval ...) function: am I right ?
>
>> What do you observe in detail?
> Here is a Makefile using $eval
>
> ################################## start Makefile
> define MY
>
> t$(1):
> echo "Hello I'm target n $(1)" > $$@
> endef
>
> TARGETS= 1 2 3 4 5 6
>
> .PHONY: all clean
>
> all: merge.txt
>
> merge.txt : $(foreach x,$(TARGETS),t${x} )
> cat $^ > $@
> $(foreach x,$(TARGETS), $(eval $(call MY,$x)))
Well, it's a bug in make-3.78.1 which was used do built `qmake`. If I compile
this 3.78.1 version as normal `make` it results in the same error.
As `qmake` isn't using any SGE internals, it should be possible to compile it
with a newer version of the make source to get it working (or even use just
another `qmake` out of the available repositories.
-- Reuti
> clean:
> rm -f $(foreach x,$(TARGETS), t${x} )
>
> ##############################end Makefile
>
>
> with 'make'
>
>
> make clean all
> rm -f t1 t2 t3 t4 t5 t6
> echo "Hello I'm target n 1" > t1
> echo "Hello I'm target n 2" > t2
> echo "Hello I'm target n 3" > t3
> echo "Hello I'm target n 4" > t4
> echo "Hello I'm target n 5" > t5
> echo "Hello I'm target n 6" > t6
> cat t1 t2 t3 t4 t5 t6 > merge.txt
>
> with 'qmake'
>
> qmake clean all
> rm -f t1 t2 t3 t4 t5 t6
> qmake: *** No rule to make target `t1', needed by `merge.txt'. Stop.
>
>
> Thank you,
>
> Pierre
_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users