Ошибка LLDB-9 с QtCreator v4.11 в Ubuntu 19.11 - PullRequest
2 голосов
/ 27 февраля 2020

В течение последних недель я бродил по проблеме с QtCreator и LLDB v9, когда я запустил процесс отладки, возникло исключение системного исключения ubuntu, диалоговое окно исключения сообщило, что Нет модуля с именем _lldb и процесс отладки в QtCreator начинается.

Конфигурация моей системы:

  • Ubuntu 19.10 x64
  • Qt 5.14.1
  • Qt Creator 4.11
  • lldb-9
  • python -lldb-9

Сначала я думал, что существует проблема с lldb- 9, потому что когда я использовал lldb-7, проблем не было, и по этой причине я решил отладить свою программу вручную, и угадайте, что, lldb-9 быстро отладил мою программу под консолью.

Затем я думал, что проблема должна быть python, тогда я установил python3 -lldb-9, но ничего не изменилось.

1 Ответ

2 голосов
/ 27 февраля 2020

Проводя исследование inte rnet, я нашел этот пост: Как импортировать lldb в python скрипт . Этот пост показал мне, что python не загружает модуль lldb, потому что этот модуль предназначен для работы в командной строке lldb. Но наверняка QtCreator нужен для корректной работы lldb.

Наконец, запустив команду lldb -P , я нашел решение. Вам нужно сделать две пропущенные символические ссылки, таким образом:

Go на вашу python -lldb версию, в моем случае это:

cd /usr/lib/llvm-9/lib/python3.7/site-packages/lldb

Затем создайте символ c ссылка на liblldb.so.1 с python -подобным именем модуля:

sudo ln -sf ../../../liblldb.so.1 _lldb.so

По моему опыту, нет необходимости связывать больше библиотек в этом каталоге.

Наконец, команда lldb -P показывает псевдоним для - python -path del LLDB, который в моем случае:

/usr/lib/x86_64-linux-gnu/python3.7/site-packages

Но этот каталог делает не существует. Итак, вам нужно создать новую символическую ссылку:

cd /usr/lib/x86_64-linux-gnu/
mkdir python3.7
ln -sf /usr/lib/llvm-9/lib/python3.7/site-packages/ site-packages

Убедитесь, что у вас правильно выбрана версия python в параметрах QtCreator, и попытайтесь отладить ее в QtCreator.

Примечание: если вы хотите импортировать модуль lldb в оболочку python3, вы должны экспортировать путь python следующим образом:

export PYTHONPATH='/usr/lib/llvm-9/lib/python3.7/site-packages'

Может быть, этот подход работает для python2 .7, я нахожу это решение легко, и, возможно, это ошибка Ubuntu 19.10, связанная с пакетами lldb-9 и python -lldb, не знаю, но если кто-то из вас знает об этом, я ценю дополнительную информацию.

...