Зависает приложение при вызове system("ls"); (Qt creator 5.7.0, Debian, Linux). Что делать?
Короче говоря при вызове функции system() (не важно с каким аргументом),
приложение виснет, когда запускаю в IDE Qt Creator 5.7.0, в дебажном режиме.
То же самое наблюдается с функцией execl() и т.п.
А когда из командной строки вызываю ./a.out
все нормально работает.
Приложение пишу на C++.
Заранее благодарю!!!
Дело в том, что дебаггер пытается отладить команду ls, но там нет отладочных символов. Чтобы дебаггер не отлаживал сторонние процессы нужно в Параметры -> Отладчик -> GDB Расширенные, убрать галочку Отлаживать всех потомков.
Виснет, или не видишь ответа в консоли вывода? Вообще консоль выводится или нет? Есть там такой баг...
кроме этого, открой системную консоль и там введи (когда "висит приложение $echo $? какой ответ будет?
Александр спасибо за ответ.
1.не вижу ответа,
2.да консоль выводится
но нечего в нем делать не получается, т.е. можно писать и т.п. но нечего не меняется
и да кстати у меня там получается два процесса, и плюс процесс "gdb -i mi" кода убиваю gdb команда из system() выполняется но другой процесс так и не завершается.
так какой вопрос был - такой и ответ. Кстати, вообще не пойму тогда зачем мучить QT под консольные приложения. Вы разберитесь просто с тем, как писать простые программы на с в простом редакторе и как пользовать gdb также в консоли.