Переход к источникам Qt в Qt Creator (в Ubuntu Linux) - PullRequest
22 голосов
/ 19 февраля 2011

Я использую Qt Creator в Ubuntu. Он устанавливается из репозиториев, но, как и сейчас, нет способа войти в исходники Qt при отладке.

Как я могу включить это?

Ответы [ 3 ]

40 голосов
/ 19 февраля 2011

Поскольку Qt Creator использует gdb, вам необходимо настроить gdb.Первое, что нужно сделать, это установить символы отладки Qt:

apt-get install libqt4-dbg

Или, для Qt5:

apt-get install qtbase5-dbg # For the qtbase package

Это установит символы отладки для библиотек Qt.В старых выпусках Ubuntu была глупая ошибка, которая требовала дополнительного трюка для исправления этих файлов символов, но в текущем выпуске он работает нормально.

Это сделает шаг gdb внутри методов Qt, но без исходников это неинтересно.Поэтому нам нужны источники, которые могут быть установлены следующим образом, при условии, что репозиторий источников включен в APT:

apt-get source qt4-x11
ln -s qt4-x11-4.7.0 qt # a convenience symlink

Или, для Qt5:

apt-get source qtbase-opensource-src
# Make a link as above, if you wish

Это загрузит исходникираспакуйте их в текущий каталог и исправьте их соответствующим образом, никаких привилегий суперпользователя не требуется, если текущий каталог не доступен для записи текущим пользователем.

И последнее, что нужно сообщить GDB о расположении источников, котороесделать это, поместив это в файл ~/.gdbinit:

dir ~/vita/qt/src/corelib
dir ~/vita/qt/src/gui
dir ~/vita/qt/src/network
dir ~/vita/qt/src/sql

Добавьте модули и исправьте пути по мере необходимости.Удобная символическая ссылка очень полезна, поэтому нам не нужно редактировать этот файл каждый раз, когда мы обновляем новую версию Qt.Нам нужно только загрузить новые исходники, исправить их и изменить символическую ссылку.

Обратите внимание, что даже если мы установили символы отладки, мы все еще используем сборку выпуска библиотек Qt.Это означает, что код сильно оптимизирован и иногда будет вести себя очень странно при переходе в двоичные файлы Qt.Если это проблема, тогда необходимо собрать Qt в режиме отладки, установить его отдельно (скажем, в / usr / local / qt4-debug) и указать Qt Creator использовать эту конкретную установку.

0 голосов
/ 26 января 2018

Двоичные пакеты Qt для Linux не содержат символов отладки, и поэтому отладчик не знает файлов или номеров строк, к которым нужно перейти.Вам нужно собрать Qt самостоятельно с опцией -debug configure, если вы хотите иметь возможность отлаживать код Qt.

Инструкции от Сергея Тахенова инструкции будут работать только в том случае, если вы создадите свое приложение для версии Qt, которую вы можете найти изРепозитории Ubuntu.

0 голосов
/ 16 августа 2017

Единственный способ заставить его работать на Ubuntu - это сборка Qt из источников с configure -debug.После этого все стало работать как очарование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...