Problem z odpaleniem programu na QT Creator

0

Napisałem jakiśtam program wg. tutorialu:

 #include <QApplication>

int main(int argc, char *argv[])
{
   QApplication app(argc, argv);

   return app.exec();
}

oraz próbowałem także wg. innego tutorialu zrobić coś takiego:

#include <QApplication>
#include <QPushButton>
 
int main(int argc, char *argv[])
{
    QApplication program(argc, argv);
 
    QPushButton button("Hello World");
    button.resize(250, 100);
    button.show();
 
    return program.exec();
}

jednak kiedy debuguje ten program to on nie pisze o żadnym błędzie, natomiast przy uruchamianiu tego programu mam następujący błąd:
"During startup program exited with code 0xc0000139"
odpalany program jest przez kompilator ręcznie też go się nie da odpalić ale to z powodu braku jakiejś biblioteki ( instalowałem qt creator z MiniGW) , tylko, że ten projekt jest w wersji Debug a nie Realse także to dla mnie jest zrozumiałe, jednak nie rozumiem dlaczego kompilator nie umie uruchomić ani jednego programu ??

1

Na moje oko skopales cos przy instalacji Qt.

0

Nie wiem w każdym razie ja tam praktycznie nic nie zmieniałem tylko klikałem dalej dalej dalej instaluj no ale ponownie zainstalować może pomoże. Ma ktoś może jakieś inne propozycje ??

1

http://doc.qt.digia.com/stable/install-win.html
Przeczytaj i upewnij się czy masz poprawnie ustawione np. zmienne systemowe.

0

@Hostel zobaczę teraz
@n0name_l Reinstalacja nic nie dała

========== DODANO ==============
Jak dam, żeby uruchomił z pominięciem instalowania (ten program który zaprogramuję to mam taki błąd: -1073741511 )
i napisane, że program nieoczekiwanie zakończył pracę.

1

Qt5? Jesli tak to musisz sciagnac ze zrodel i przekompilowac pod MinGW samemu. Wydany zostal jak napisali pod msvc i mingw bedzie powodowal crashe(jakis tam stary dzialal, nie pamietam ktora wersja). Mialem ten sam problem.

0

Nie wiem czy coś to da ale i ten QT i eclipse korzystają z MinGW może w tym jest problem, że mam 2 ?? bo jeden działa na pewno bo sprawdzałem programem eclipse to może tego też da się tak ustawić aby korzystał z tamtego MinGW a nie swojego ??

1

Coś mi się wydaje, że ten Eclipse ma w PATH dodane jakieś ścieżki do swojej wersji Mingw. Qt5.0.1 nie zapisuje do PATH nic na stałe, robi to tylko przy odpalaniu projektu przez QtCreator.
A tak dla pewności: czy swój projekt zbudowałeś w ten sposób?:
powinieneś mieć min. 2 pliki umieszczone w tym samym katalogu.
plik projektu, o nazwie np: testowy.pro, w którym umieszczasz taki oto kod:

 // Zawartość testowy.pro
QT += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = ATest
TEMPLATE = app

SOURCES += main.cpp

oraz plik main.cpp (zawartość taka jak w Twoim poście)

//Zawartość main.cpp:
#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
    QApplication program(argc, argv);

    QPushButton button("Hello World");
    button.resize(250, 100);
    button.show();

    return program.exec();
}

U mnie ten kod kompiluje się i uruchamia bez żadnych problemów(release i debug). System W7 HP x64

0

zawartość pliku nauka.pro:

#-------------------------------------------------
#
# Project created by QtCreator 2013-02-04T20:36:16
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = nauka
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

a plik main.cpp wygląda tak:

#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
    QApplication program(argc, argv);

    QPushButton button("Hello World");
    button.resize(250, 100);
    button.show();

    return program.exec();
}

tylko napisze wam jeszcze jedno ja zawsze aby skompilować naciskałem f5 dobrze robię ?? czy trzeba coś jeszcze zrobić ?? Albo inaczej jak skompilować i uruchomić dobrze w tym programie program bo nie jestem pewny czy dobrze to robie

=========== DODANO ================
Dalej mam problem:
"Program nieoczekiwanie przerwał pracę."
wyłączyłem antywirusa bo spróbowałem coś pod eclipse skompilować to mi antywirus blokował dlatego go wyłączyłem na eclipse działa dobrze a tutaj niestety mam błąd dalej nie wiedzą czemu :/

1

A co zrobiłeś z plikami: mainwindow.cpp, mainwindow.h i mainwindow.ui? Nadal są w katalogu z projektem? Uzywasz QtCreator czy Eclipse do budowy tego projektu?
Aby skompilować ten projekt spróbuj w menu QtCreator: Budowanie->Wyczyść wszystko. Następnie: Budowanie->uruchom qmake, potem Budowanie->Zbuduj "nauka".
Na lewym pasku QtCreator masz taką zieloną strzałkę (lub kombinacja Ctrl+R). To powinno uruchomić program nauka.

1

Pokaż co masz ustawione w zmiennej środowiskowej PATH. Można ją sprawdzić przez Windows ale też w QtCreator gdy wejdziesz w zakładkę Projekty a następnie Środowisko budowania.

0

@Hostel Tutaj podaje zdjęcie z QT Creator oraz log.txt który ma ten PATH z wiersza poleceń ( nie wiem czy o to dokładnie chodziło ale wiem, że jak dodam do zmiennych środowiskowych w windowsie miejsce gdzie jest umieszczony kompilator MinGW od QT to też nic nie daje (uprzedzając uruchamiam ponownie komputer po zmianach w tych zmiennych ) ).
http://imageshack.us/photo/my-images/585/rodowiskobudowania.jpg/

obrazek chyba nic nie da tutaj jest to co tam w tej tabelce jest napisane w QT Creator:
C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin;C:\MinGW\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files\Broadcom\Broadcom 802.11 Network Adapter;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;C:\MinGW\bin;

Patch z Windows`a :
https://www.dropbox.com/s/55scszimfrp9hly/log.txt

1

Z tego co widzę, masz jakąś wersję mingw w lokalizacji: C:\MinGW. Co to za wersja?. Qt 5.0.1 instalowałeś jako full instal (z jego własną kopią mingw?). Jeżeli tak, to ścieżki w środowisku budowania powinieneś mieć takie:
C:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin
C:\Qt\Qt5.0.1\Tools\mingw\bin

Podejżewam że twoje problemy powoduje ten wpis: C:\MinGW\bin; - prawdopodobnie wersja mingw niekompatybilna z Qt5.0.1.

1

Tamten MinGW jest do eclipse bo on też potrzebował MinGW (robiłem wg. jakiegoś tam poradnika), ale spróbuję dodać następnego MinGW z tych lokalizacji co ty podałeś, a robiłem pełną instalację (instalka ważyła ponad 850MB i nazywała się tak: qt-windows-opensource-5.0.1-mingw47_32-x86-offline )

============== DODANO ====================
Musi być coś źle z tym MinGW bo na innym komputerze (świeżo po formacie) działa bez problemu wystarczy tylko klikac dalej dalej dalej etc. podczas instalacji później stworzyć jakiś projekt i nawet nic nie trzeba zmieniać wystarczy ta strzałka zrobić i działa, a ten ma problem bo w ustawieniach niekiedy widzę jak ma np. przy zakładce kompilatory to ma 2 MinGW w tym jeden w folderze C:\Qt(...) a drugi w folderze C:\MinGW(...)

============== DODANO - Rozwiązanie problemu ====================
UDAŁO SIĘ :D
wystarczyło wejść w opcje i tam zakładka zestawy zrobić klon tego MinGW i zmienić w zakładce kompilator na MinGW 4.7 32bit oraz zmienić ścieżkę na tą C:\Qt\Qt5.0.1\Tools\MinGW\bin\gdb.exe i później jak tworzy się nowy projekt to trzeba ten pierwszy kompilator wyłączyć i zostawić tylko ten drugi i projekt już później uruchamia się bez problemu ;-)

Dziękuję Wszystkim Którzy Brali Udział W Tym Temacie Za Pomoc, Cierpliwość Oraz Życzliwość.
Miłego Programowania :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1