mpirun
provavelmente usa uma chamada de execv()
para executar o programa em vez de um execvp()
um (que procuraria por ele em PATH
).
Primeira solução alternativa: peça ao shell para procurar o comando por si só:
mpirun -np 4 $(which PyroDist) -in C005.dat -out foo
Caso contrário: duas soluções alternativas (não tão boas) em que consigo pensar:
-
Use
/usr/bin/env
com o argumentoPyroDist
, mas isso requer quempirun
permita passar argumentos junto com o programa de alguma forma. -
Escreva seu próprio wrapper como:
#!/bin/sh PyroDist
e coloque-o em algum lugar com um caminho relativo "fixo".