2012-01-13 24 views
7

W Linuksie próbuję debugować aplikację C++ za pomocą gdb w Eclipse CDT.W systemie Linux, debugowanie aplikacji C++ za pomocą gdb w Eclipse CDT, jak wprowadzić coś na standardowe wejście?

Na przykład aplikacja applic.exe trwa kilka argumentów wiersza poleceń arg1 i arg2 i oczekuje jakieś dane na stdin (powiedzmy, wzięty z pliku input.txt).

Normalnie, aby uruchomić aplikację w konsoli chciałbym to zrobić:

cat input.txt | applic.exe arg1 arg2 

Korzystanie gdb w konsoli mogę zrobić:

gdb applic.exe 
(gdb) run applic.exe arg1 arg2 < input.txt 

Czy to możliwe, aby to zrobić z gdb w Zaćmienie? Wiem, jak określić argumenty (i środowisko) w Eclipse Debug Configurations, ale co z stdin?

+0

Nie jestem pewien, czy można to zrobić, w konfiguracji uruchamiania istnieje opcja określania pliku wyjściowego, ale dla wejścia mówi, że musi mieć dołączoną konsolę. – fortran

Odpowiedz

2

W Eclipse znajduje się zakładka Console (na dole IDE), w której możesz umieścić swoje dane.

+1

Upewnij się, że wybierasz konsolę GDB z dostępnych konsol. – Grammin

+0

Myślę, że operacja wymaga automatycznej metody robienia tego, a nie kopiowania i wklejania za każdym razem (może to być bardzo duży plik wejściowy!). – fortran

+1

Rzeczywiście to było moje pytanie. – user1069609

0

Zamiast wprowadzać przekierowanie na karcie argumentów, należy dołączyć ją do nazwy pliku wykonywalnego w konfiguracji debugowania.

+1

Przykład kodu byłby miły;) – RedEyedMonster

Powiązane problemy