#include #include #include #include #include #include int main(int argc, char *argv[]) { // Créer le processus enfant int total_args = argc + 3; // "-k", "fr", NULL char **child_argv = malloc(sizeof(char *) * total_args); if (!child_argv) { perror("malloc"); exit(EXIT_FAILURE); } child_argv[0] = "/var/packages/Virtualization/target/bin/qemu-system-x86_64"; // nom du programme exécuté //child_argv[0] = "/bin/echo"; child_argv[1] = "-k"; child_argv[2] = "fr"; // Copier les arguments passés à launcher for (int i = 1; i < argc; i++) { child_argv[i + 2] = argv[i]; } child_argv[total_args - 1] = NULL; // terminaison NULL execv(child_argv[0], child_argv); // Si exec échoue perror("execl a échoué"); exit(EXIT_FAILURE); }