Как установить символы отладки для libc++ в Ubuntu?

Как установить символы отладки для libc++ в Ubuntu 20.04 LTS?

Прямо сейчас мне приходится прибегать к компиляции всего с помощью -fstandalone-debug.


person marczellm    schedule 25.01.2021    source источник


Ответы (1)


Я искал то же самое, начиная со вчерашнего дня, и сегодня нашел эту вики-ссылку: https://wiki.ubuntu.com/Debug%20Symbol%20Packages

кратко:

  1. добавить источники для своих пакетов символов отладки
echo "deb http://ddebs.ubuntu.com $(lsb_release -cs) main restricted universe multiverse
deb http://ddebs.ubuntu.com $(lsb_release -cs)-updates main restricted universe multiverse
deb http://ddebs.ubuntu.com $(lsb_release -cs)-proposed main restricted universe multiverse" | \
sudo tee -a /etc/apt/sources.list.d/ddebs.list
  1. импортировать ключ подписи для указанных пакетов
sudo apt install ubuntu-dbgsym-keyring
  1. обновите список пакетов, чтобы включить новые
sudo apt-get update
  1. теперь вы можете установить *-dbgsym пакеты, я нашел, какой пакет libc++ я установил так:
apt list --installed | grep libc++
  1. У меня была libc++1-11. Я проверил, что пакет -dbgsym существует брутально вот так:
sudo apt search libc++ | grep -P 'libc\+\+.*dbgsym'
  1. Ну и конечно же установил тот, который мне был нужен:
sudo apt install libc++1-11-dbgsym

Я получил подсказку о правильном решении из последнего комментария в этой ветке: https://bugs.llvm.org/show_bug.cgi?id=24202

person MikeMike    schedule 04.02.2021
comment
в статье также упоминается, что для более старых версий Ubuntu замените шаг 2 на: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F2EDC64DC5AEE1F6B9C621F0C8CAB6595FDFF622 - person MikeMike; 04.02.2021
comment
Я все еще не вижу превью std::string в своем отладчике :( - person marczellm; 24.02.2021
comment
В моем случае мне действительно нужна была libstdc++, а не libc++, поэтому вы можете попробовать те же шаги, но для libstdc++ - person MikeMike; 25.02.2021