从PHP编译C,exec错误试图执行'cc1'

Mar*_*ino 6 php c gcc exec shell-exec

嗨伙计们我试图用PHP编译一个C程序与exec和Laravel框架但我不认为这是问题,因为我可以从终端编译和执行C程序没有问题,如果你知道从修补程序在Laravel 5所以问题来自PHP,但我找不到错误我认为问题是形成不同版本的GCC,但为什么让我从终端编译.

我从PHP那里得到这个错误.如果我从终端编译它可以工作,但从PHP没有.

    $path = public_path("testing/cosas.out");
    exec("gcc testing/pruebaC.c -o testing/from.out 2>&1",$output,$status);
    dd($output,$status); //is like var_dump
Run Code Online (Sandbox Code Playgroud)

我得到了!!

gcc:错误尝试执行'cc1':execvp:没有这样的文件或目录"

我检查了权限,事实上我在绝望XD中做了chmod 777而且我尝试重新安装一切,但它不起作用.我很沮丧,我希望你能帮助我.

对不起我的英语,如果我犯了语法错误,谢谢我等待你的帮助:D

Ohg*_*why 4

问题在于,当通过浏览器调用您的应用程序时,它会通过正在处理 Apache 实例的用户运行。如果这不是根用户(或其他特权用户),则它可能无权访问。此外,这可能会指示应用程序尝试从哪个目录执行。

当您从 CLI 执行时,用户是拥有终端实例的任何人(当然除非su'd)。