попробуйте сделать это по полному пути:
/path/to/installed/fet --inputfile=/path/to/your/Hopwood.fet --outputdir=/path/to/your/out
так что в итоге вы выполните:
exec("/path/to/installed/fet --inputfile=/path/to/your/Hopwood.fet --outputdir=/path/to/your/out");
Кроме того, убедитесь, что запущенный процесс имеет возможность записи в ваш /path/to/your/out
UPDATE
Чтобы было понятнее, попробуйте выполнить следующую команду:
exec("/path/to/installed/fet --inputfile=/path/to/your/Hopwood.fet --outputdir=/path/to/your/out 2> /tmp/fet.error.log", $output, $status);
echo "status: " . $status;
echo "output: " . implode("\n", $output);
if(file_exists("/tmp/fet.error.log"))
{
echo "Error Log: " . file_get_contents("/tmp/fet.error.log");
}
UPDATE
как сказал @mkotwd в другом ответе (после попытки отладки кода выше). Проблема в том, что fet
пытается получить доступ к X-серверу. Итак, ответ @mkotwd: добавьте:
export DISPLAY=:0
и команда становится:
exec("export DISPLAY=:0 && fet --inputfile=Hopwood.fet --outputdir=out");