Executer un programme c en php

Bonjour,

j'ai un programme en c que je veux l'éxecuter avec php
j'ai essayé avec la commande
system('./prgm'); et sa na pas marché
merci

5 réponses

  1. Est-ce que ça fonctionne quand tu exécutes ./prgm directement depuis le shell ?
    1. Alors c'est peut-être un problème de droits en exécution pour le programme, ou de mauvais chemin spécifié. Est-ce que PHP renvoie une erreur ?
      Essaie proc_open, ça permet l'exécution de programmes de façon bien plus souple que system, et tu pourras voir la sortie du programme (ce qui est d'une grande aide quand on ne sait pas à quoi est due l'erreur).
      1. ou exec tout simplement
        1. Dans mon message, je lui demandais d'utiliser proc_open pour permettre le débuggage : avec exec, on n'a aucune idée de ce qui se passe ni des erreurs retournées une fois que la commande est exécutée par PHP.

          proc_open permet de connaître la sortie, les erreurs retournées, et de savoir par exemple si le processus est toujours en cours d'exécution quelques secondes plus tard.
      2. un simple prgm marche bien avec system mais le prgrm qui lance une commande pour acceder a mysql par exemple il marche pas
        moi je veux acceder a PVM voici le prgme que je veux executer

        #include <pvm3.h>

        int main(int p_argc, char *p_argv[]){

        static char *argv[] = {
        "server",
        };
        int *infos[1];
        int info1 = pvm_start_pvmd( 1, argv,0);

        int i;
        for(i = 0; i < p_argc ; i++){
        char *hosts[1] ;
        hosts[0]= p_argv[i];
        int info =pvm_addhosts( hosts, 1,infos);

        }

        }