Debugowanie programu standard c++ w qt creator zawierającego cin

0

Witam,

używam Qt Creator 2.5.2 (Based on Qt 4.8.2 - 32 bit) w systemie Ubuntu Linux 12.10.

Chcę debugować programy w projektach typu Zwykły projekt C++ (bez Qt) zawierające instrukcje cin.

Program zawierający instrukcje cout działa prawidłowo. Jeśli dodam instrukcje cin to program przestaje być prawidłowo debugowany.

Przykład programu, którego nie mogę debugować:

#include <iostream>

using namespace std;

int main()
{
    cout << "Podaj liczbę: ";
    int liczba = 0;
    cin >> liczba; // bez tej linii debuguje się prawidłowo
    cout << liczba << endl;
    return 0;
}

Proszę o pomoc. Pozdrawiam, VoyciecHo

0

to jest znany problem w Qt Creator (bardziej wina gdb niż Qt Creatora).
Problem da się to obejść (jak męczyłem SPOJa to tak robiłem).
Tworzysz plik wejściowy z tym co normalnie wpisywałbyś z palca i w parametrach programu (znajdziesz w opcjach projektu) przekierowujesz standardowe wejście na ten plik (pamiętaj, że program może być wykonywany w osobnym katalogu), coś w stylu "<jakisPlik.txt"
Do tego trzeba włączyć lub wyłączyć (nie pamiętam na 100%, ale raczej wyłączyć) pokazywanie konsoli.
Potem można debugować i jest to wygodne (nawet wygodniejsze, bo nie trzeba pisać :) ).

0

Dzięki, MarekR22. O to chodziło.

To że trzeba wyłączyć opcję Uruchom w terminalu to wiedziałem. To że trzeba dane z cin przesłać do programu w pliku też wiedziałem.
Ale nie wpadłem na to, jak to zrobić. Wystarczy w argumentach dodać, np. <./plik.txt . plik.txt powinien znajdować się oczywiście w katalogu z plikiem wynikowym, a nie w katalogu z plikami źródłowymi.

0

to jest znany problem w Qt Creator (bardziej wina gdb niż Qt Creatora)
Szczerze, to mnie nie interere czego to jest wina. Problem znam od kilku lat, a pewnie jest „od zawsze” — i mieli dość czasu żeby to zmienić, naprawić.

Problem z debugowaniem konsoli w Qt Creatorze jest pod Windowsem, jest pod Linuksem i jest pod FreeBSD.
Noż kurde.

0

SOA #1: U mnie działa. QtCreator do tej pory nie współpracował z żadnym innym terminalem jak tylko z xterm. W wersji 2.6.0 zostało to naprawione. Sprawdziłem zarówno w xterm jak i w konsole debugowanie działa jak trzeba. (A w xterm działało zawsze)

Zaktualizujcie wszystko i zobaczcie czy jest ok.

Ja mam tak:

sys-devel/gdb-7.5
dev-util/qt-creator-2.6.0

Tutaj jest bug: https://bugreports.qt-project.org/browse/QTCREATORBUG-1633 jak widać został zamknięty w 2.6.0-rc.

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