2010-04-26 6 views
0

Я просто потратил несколько часов, вытаскивая свои волосы из-за этого. Я пытаюсь получить gcc для компиляции файла из PHP.PHP exec не работает с gcc

$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"; 

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

ответ

0

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

0

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

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

Я забыл упомянуть, что выходной файл не отображается вообще. Я редактирую свой вопрос. –

Смежные вопросы