PHP Exec не работает с GCC - PullRequest
0 голосов
/ 27 апреля 2010

Я просто потратил несколько часов на то, чтобы вырвать себе волосы. Я пытаюсь заставить gcc скомпилировать файл из PHP.

    $command = "/usr/bin/gcc /var/www/progpad/temp/tNu7rq.c -o /var/www/progpad/temp/tNu7rq.out";
    exec($command, $output, $returnVal);
    echo $returnVal."<br />"; //returns 1 and no output file created.

Я запускаю это на своем собственном сервере Ubuntu, и оба

/var/www/progpad/
/var/www/progpad/temp/

есть набор chmod 777. Если я копирую и вставляю командную строку и вставляю ее в терминал, она отлично работает.

Также, если я заменю командную строку чем-то вроде

$command = "echo test > test.txt";

Тогда нет проблем с созданием текстового файла. Что я мог здесь делать неправильно ???

Ответы [ 2 ]

0 голосов
/ 27 апреля 2010

Я нашел проблему.Я случайным образом генерировал имена файлов и создавал файл.Я пытался скомпилировать файл перед запуском fclose () в обработчике файла.

0 голосов
/ 27 апреля 2010

Вы компилируете программу, но никогда не выполняете ее.

  1. Проверьте, что скомпилировано Программа работает, запустив foo.out.
  2. Предполагается, что foo.out скомпилирован правильно, затем запустите foo.out.
...