Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec MinGW pour une utilisation avec Qt

Sujet résolu
Anonyme
    5 octobre 2007 à 20:43:05

    Bonjour!
    et oui, c'est encore moi!

    Voila, j'ai un problème, pour compiler mon projet Qt, j'utilise qmake, et la, pas de problème, mais lorsque je reproduit la même opération a partir d'un programme, le system me dit que mingw32-make n'est pas reconnu, alors que j'ai bien mis les variables PATH et que le qmake a bien fonctionné!

    voila le code :

    1. #include <iostream>
    2. #include <string>
    3. using namespace std;
    4. string valid4console(string);
    5. int main(int argc, char *argv[])
    6. {
    7.     //on initialise la variable PATH correctement pour cette session
    8.     system("qtvars.bat");
    9.     //rafraichissement de la console
    10.     system("cls");
    11.     //un jolie titre
    12.     system("title EasyBuilt_Qt 1.0");
    13.     system("color f0");//noir sur blanc c'est mieux non?
    14.         cout << "\n\t\t\t----------------------" << endl;
    15.         cout << "\n\t\t\t---EasyBuilt_Qt 1.0---" << endl;
    16.         cout << "\n\t\t\t----------------------\n\n\n" << endl;
    17.     if(argc > 1)
    18.     {
    19.         string file = argv[1];
    20.         string repertoire = file.substr(0, file.find_last_of("\\"));
    21.         string extension = file.substr(file.find_last_of("."), file.length());
    22.         if(extension != ".pro" && extension != ".PRO")
    23.         {
    24.             cout << "Le type de fichier donne en argument est incorrect." << endl;
    25.             system("pause");
    26.             return 1;
    27.         }
    28.         cout << "\n\nEtat : \n" << endl;
    29.         string building = "qmake -o Makefile " + valid4console(file);
    30.         system(building.c_str());
    31.         system("make");
    32.         //repassé le focus a la fenetre d'appel
    33.         /*string open_folder = "explorer " + repertoire;
    34.         system(open_folder.c_str());*/
    35.         cout << "\n\nTerminee" << endl;
    36.         system("pause");
    37.         return 0;
    38.     }
    39.     cout << "Entrez le chemin complet du repertoire de votre fichier .PRO." << endl;
    40.     string way;
    41.     getline(cin, way);
    42.     int end_way = way.length() - 1;
    43.     if(way.at(end_way) != '\\' && way.at(end_way) != '/')
    44.     {
    45.         way += '/';
    46.     }
    47.     cout << "\n" << endl;
    48.     cout << "Entrez le nom de votre fichier .PRO." << endl;
    49.     string file_pro;
    50.     getline(cin, file_pro);
    51.     if(file_pro.length() > 5)
    52.     {
    53.         int end_file_pro = file_pro.length() - 1;
    54.         int last_file_pro = file_pro.length() - 4;
    55.         string extension = file_pro.substr(last_file_pro, end_file_pro);
    56.         if(extension != ".pro")
    57.         {
    58.             file_pro += ".pro";
    59.         }
    60.     }
    61.     else
    62.     {
    63.         file_pro += ".pro";
    64.     }
    65.     cout << "\n\nEtat : \n" << endl;
    66.     string file = way + file_pro;
    67.     string building = "qmake -o Makefile " + valid4console(file);
    68.     system(building.c_str());//je fait appelle a qmake
    69.     system("make");//puis au compilo
    70.     cout << "\n\nTerminee" << endl;
    71.     system("pause");
    72.         return 0;
    73. }
    74. string valid4console(string in)
    75. {
    76.     string retour = "\"" + in + "\"";
    77.     return retour;
    78. }


    Le system me dit ca quand je le lance avec le fichier en argument, mais pas quand je le rentre manuellement o_O

    (vous pouvez faire des tests, il y a juste ce fichier la, mais il faut avoir Qt, sinon ca marchera pas, et mettre qtvars.bat dans le même dossier que le programme)
    • Partager sur Facebook
    • Partager sur Twitter

    Problème avec MinGW pour une utilisation avec Qt

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown