• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem z poprawnym działaniem testowego programu w Qt-Creator skompilowanego pod windows.

Object Storage Arubacloud
0 głosów
363 wizyt
pytanie zadane 30 grudnia 2018 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)

Witam, niedawno zacząłem się uczyć Qt z książki:  https://helion.pl/ksiazki/c-i-qt-wprowadzenie-do-wzorcow-projektowych-wydanie-ii-alan-ezust-paul-ezust,cppqtw.htm#format/e

Wszystko mi łatwo idzie pod Linuxem ( kompilacja, działanie programów... ). Gorzej kiedy do tych samych projektów wykorzystuje Qt-Creator na systemie windows ( bo jak coś robić to trzeba umieć na każdym systemie ), mam taki prosty kod:

#include <iostream>

int main() {
    using namespace std;

    int factArg = 0 ;
    int fact(1) ;
    do {
        cout << "Silnia: ";
        cin >> factArg;
        if ( factArg < 0 ) {
            cout << "Bez wartości ujemnych, bardzo proszę!" << endl;
        }
    } while (factArg < 0) ;
    int i = 2;
    while ( i <= factArg ) {
        fact = fact * i;
        i = i + 1;
    }
    cout << factArg << " silnia to: " << fact << endl;
    return 0;
}

A tu plik *.pro :

TARGET = Test
TEMPLATE = app

SOURCES += \
    main.cpp

Wykorzystuję Qt 5.11.2 MinGW 32bit

Kiedy uruchamia się program w konsoli Qt-Creator'a, to poza wypisaniem zawartości strumienia wejściowego std::cout nic się nie dzieje...

Kiedy natomiast otwieram gotowy plik *.exe to już zupełnie mam brak czegokolwiek ( program nie pojawia się nawet w menadżerze procesów, pewnie jest od razu zamykany ).

Słyszałem też o czymś takim:

Tyle że ja nie używam w tym projekcie MSCV :/

Wiem oczywiście że tu używanie Qt nie ma senu, chodzi mi jedynie o zrozumienie co jest powodem problemów... ( bo na Linux działa wszystko ok )

Dziękuje z góry za pomoc :)

2 odpowiedzi

+1 głos
odpowiedź 30 grudnia 2018 przez Szfierzak Gaduła (3,750 p.)
Z mojego doświadczenia wynika, że nawet jak piszesz w QtCreatorze, to dla poprawnie działającej aplikacji konsolowej powinieneś dopisać CONFIG += console. w pliku .pro. Niestety nie zgłębiałem przyczyny.
komentarz 30 grudnia 2018 przez Jakub 0 Pasjonat (23,120 p.)
Dzięki, zadziałało teraz :) Co prawda tylko w pliku wykonywalnym *.exe ale to i tak dobrze ( niemniej nie zamykam jeszcze pytania ). A dziwne bo już stosowałem to i nic wcześniej mi nie dało...
+1 głos
odpowiedź 30 grudnia 2018 przez sp00ky Obywatel (1,760 p.)

dziwne wkleiłem dokładnie Twój kod i działa link, sprawdź czy masz poprawnie skonfigurowane zestawy narzędzi (wersja Qt, kompilator, debugger)

plik .pro

TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += \
        main.cpp

 

komentarz 31 grudnia 2018 przez Jakub 0 Pasjonat (23,120 p.)
Dziwne :/ To mi raz działa  a raz nie, skorzystałem z twojego pliku .pro, potem usunąłem z niego CONFIG -= qt bo stwierdziłem że może będę chciał tu jednak dodać jakie obiekty i funkcji biblioteki. Będę po kolei usuwał właściwości z pliku i .pro sprawdzę czego brakowało :)

Podobne pytania

+1 głos
1 odpowiedź 360 wizyt
0 głosów
1 odpowiedź 1,035 wizyt
pytanie zadane 26 sierpnia 2015 w C i C++ przez Jakub Nowacki Początkujący (470 p.)
0 głosów
0 odpowiedzi 62 wizyt

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...