[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Condor-users] Condor_exec.exe +Cygwin

On Tue, 8 Feb 2005 13:36:29 +0100, Ramzi KHASKHOUSSI
<ramzi.khaskhoussi@xxxxxx> wrote:
> Hi everyone,
> I have condor 6.6.7 installed on my windows machines, I have an application
> that uses Cygwin1.5.11.
> I resolved the problem of directories and file transfer by writing a shell
> scripts that works fine under cygwin.
> But , After submitting the job in the vanilla universe from the cygwin bash
> shell, and when executing the job on the remote machine there is a big
> problem because condor cannot execute condor_exec.exe that is generated on
> the remote machine in the directory c:/condor/execute/dir_.. And it
> generates this error:
>                                " C:\condor\execute\dir_276\condor~1.exe
>                                The NTVDM CPU has encountred an illegal
> instruction.
>                                CS:06c2 IP:0115 OP:63 2d 76 61 6c choose
> close to terminate the application "
> I give here my sub file:
>                                Executable = validation
>                                Universe = vanilla
>                                getenv = true
>                                Output = validation.out
>                                Error = validation.err
>                                Log = validation.log
>                                should_transfer_files = YES
>                                when_to_transfer_output = ALWAYS
>                                Requirements = ((memory > 0)||(OpSys ==
> "WINNT50"))
>                                Queue
> NB: The executable 'validation' is a shell script that locally works fine on
> cygwin1.5.11!

problem - how does condor know that it should run this via cygwin (to
be more exact by bash)

solution - don't bother trying, to make condor do it, do it yourself 

Ensure cygwin's executable directory is always installed ina common location.
Use a bat (not bash) executable
This should set the path to include cygwin and then execute the shell
script (transfered via the input files setting) via bash ...
(alternately set cygwin's location directly via
environment=PATH=<blah> but you still need the bat calling shell
script to work)