LINUX.ORG.RU

QtCreator: нет вывода из QML [SOLVED]

 , , ,


0

2

юзаю console.log, вывод есть при запуске проги из консоли напрямую, в qtcreator видно только

QML debugging is enabled. Only use this in a safe environment.

что пробовал:

  • TARGET_COMPILE_DEFINITIONS(${PROJECT_NAME} PRIVATE $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:QT_QML_DEBUG>)

  • в build settings и run settings повключал всё про qml

  • в options qtcreator-a в default build properties перепробовал все сочетания опций separate debug info, QML debugging, Use Qt Quick Compiler

  • запускал в креаторе с аргументами командной строки типа qmljsdebugger=port:5555,host:localhost,block и аттачился через Debug->Start Debugging->Attach to Qml Port

c qmake проектами тоже не пашет. проверял так: создавал empty Qt Quick Application и добавлял в main.qml

Component.onCompleted: console.log("Hello")



Последнее исправление: luntik2012 (всего исправлений: 4)

У меня вывода qDebug() и в c++ под отладкой нет. Думаю это одна и та же проблема. Я не знаю как устранить. Смирился.

ox55ff ★★★★★
()

console.log(«Hello»)

А попробуй console.error("Hello")

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

У меня вывода qDebug() и в c++ под отладкой нет. Думаю это одна и та же проблема. Я не знаю как устранить. Смирился.

Я думаю, проблема в том, что stdout у тебя буферизирован. Если ради эксперимента использовать qCritical() будет ли он работать?

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

qDebug() без отладчика нормально показывает. std::cout и printf работают и под отладчиком, а qDebug нет, так что не буферизация.

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

да, как-то не заметил. от плюсов тоже вывода нет из qDebug(), только через std::cout.

то ли с обновлениями что-то сломалось, то ли что.

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

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

У меня не работает, только под отладчиком. Если просто запустить дебажную версию, то работает. А у тебя что-то совсем нет. Проверь не стоит ли define QT_NO_DEBUG?

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

нет, не стоит. мб креатор как-то поломали в арче. я ещё пробовал создавать файл ~/.config/QtProject/qtlogging.ini с содержимым

[Rules]
*.debug=true

но это не то. всё то же самое, только в консоли миллиард реально отладочной внутренней инфы самого qt

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

омг, треш какой, короче порешал: в run env должна быть переменная QT_ASSUME_STDERR_HAS_CONSOLE=1

решение взял отсюда и жахнул глобально на своего юзера, иначе пришлось бы per-kit или per-project делать

попробуй, расскажешь

luntik2012
() автор топика
Последнее исправление: luntik2012 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.