LINUX.ORG.RU

qtcreator проблемы с консолью

 


0

1

Создал консольное приложение на C++, первый запуск - все нормально, открывается консоль и есть вывод. Второй раз и открывается просто пустая консоль, которая ни на что не реагирует (символы туда вводить можно, но это бесполезно). Пробовал и с konsole и с xterm. Версия qtcreator - 2.8.1
Дистрибутив: gentoo
DE: kde 4.12
qt 4.8.5
Как это побороть?

★★★★★

Если запускать отдельно из консоли то бинарь работает нормально.

Landgraf ★★★★★
() автор топика

А во встроенной консоли QtCreator возникает такая же проблема? P.S.: Чтобы переключиться на встроенную консоль — убрать галку «Run in terminal» (Projects -> Build & Run -> Desktop [Run] -> Run in terminal)

DocBrown
()
Ответ на: комментарий от DocBrown

Нет, в нем все в порядке, но не работает ввод (cin)

Landgraf ★★★★★
() автор топика

Неужели никто не сталкивался с такой проблемой? Или просто никто не программирует на линуксе?

Landgraf ★★★★★
() автор топика
Ответ на: комментарий от Landgraf

Я никогда не додумывался отлаживать программы с консольным вводом через встроенный терминал... Хотя именно Qt Creator-ом только и пользуюсь.

I-Love-Microsoft ★★★★★
()

Советую осилить файлы, и делать ввод-вывод в них.

CrossFire ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Но это все равно костыли и мне удобнее отдельный терминал, а не встроенный. И у тебя в qtcreator все работает?

Landgraf ★★★★★
() автор топика
Последнее исправление: Landgraf (всего исправлений: 1)
Ответ на: комментарий от Landgraf

Не, я нигде такое не использую, ни встроенный ни внутренний.

Но чтобы внешний терминал не работал - удивлен. Ни разу не замечал чтобы это было проблемой... При случае попробую - отпишусь.

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

Такое встречалось и у других, в убунте заметил похожее, но там была проблема с ptrace, у других решалась полным прописыванием пути до терминала (например /ust/sbin/konsole -e), но мне что-то не помогло.

Landgraf ★★★★★
() автор топика
Ответ на: комментарий от Landgraf

У некоторых программ, например у Double Commander, есть проблема что если повторно вызываешь терминал (второе окно) - он ведет себя иначе, хотя казалось бы - да хоть сто штук и чо.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

в том то и дело, что до этого терминал закрываю. При этом кажется не завершается процесс выполненной программы. Хотя такого не может быть, ведь нечему долго выполняться в «хеллоу ворлде»

Landgraf ★★★★★
() автор топика
Ответ на: комментарий от Landgraf

Нет, в нем все в порядке, но не работает ввод (cin)

У меня тоже не работает (и скорее всего никогда не работало). Меня больше интересовал факт работы вывода.

Неужели никто не сталкивался с такой проблемой? Или просто никто не программирует на линуксе?

Я помню у меня были проблемы с консолью, но с такой проблемой как у тебя не сталкивался.

в том то и дело, что до этого терминал закрываю. При этом кажется не завершается процесс выполненной программы. Хотя такого не может быть, ведь нечему долго выполняться в «хеллоу ворлде»

Зачем гадать, если можно проверить это:

ps aux | grep <appname>

Но я думаю проблема скорее всего в самой среде.. Вижу несколько вариантов: 1) Костыльный: можно в настройках проекта сделать свою опцию запуска приложения. 2) Попробовать установить более новую среду разработки с сайта. 3) Искать в bugtracker'e ошибку и возможное решение.

Создал консольное приложение на C++

Можешь показать код?

P.S.: Linux Mint 14 Nadia, QtCreator 2.6.0

DocBrown
()
Ответ на: комментарий от DocBrown

Вывод

landgraf  4719  0.0  0.0  23032   932 pts/2    S+   19:57   0:00 grep --colour=auto untilled

Убить этот процесс не получается не по PID, ни по имени. Использую для убийства kill и killall. Пишет что нет такого процесса.
pro файл
TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

cpp файл
#include <iostream>

using namespace std;

int main()
{
    cout << "Hello World!" << endl;
    return 0;
}


Landgraf ★★★★★
() автор топика
Ответ на: комментарий от Landgraf

запускается стабильно: xterm и xfce4-terminal; Qt Creator 3.0.81; Qt5 и Qt4.8.

anonymous
()
Ответ на: комментарий от Landgraf

landgraf 4719 0.0 0.0 23032 932 pts/2 S+ 19:57 0:00 grep --colour=auto untilled

*Процесс завершен*. Текущий вывод - это процесс grep <appname>. Я не полностью написал команду, надо было так:

ps aux | grep <appname> | grep -v grep
Но это так, к слову.

Я так думаю, что это не совсем тот исходник, иначе не было бы фразы:

Нет, в нем все в порядке, но не работает ввод (cin)

Ну да ладно.

У меня аналогичный проект работает..

DocBrown
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.