Ошибка поиска символа GDB

Я пытаюсь использовать gdb в Ubuntu 12.04, но каждый раз, когда программа вылетает со следующей ошибкой

gdb: symbol lookup error: gdb: undefined symbol: PyUnicodeUCS4_FromEncodedObject

Выглядит что-то связанное с Python, но я не знаю, что делать ... [ 112]

0
задан 10 September 2013 в 15:42

3 ответа

И так же, как Mutewinter, я добавляю свой собственный ответ на проблему:

Пользовательская спецификация LD_LIBRARY_PATH, необходимая для проекта, который я должен был отлаживать, вызвала проблему. Если LD_LIBRARY_PATH содержит другую версию libpython, gdb может ссылаться на неправильную версию, вызывая ошибку символа.

Вы можете проверить, какую версию libpython GDB будет использовать, используя следующую команду:

ldd /usr/bin/gdb

С уважением, Эрик

0
ответ дан 10 September 2013 в 15:42

Вы можете загрузить исходный код python2.6, например,

https://www.python.org/ftp/python/2.6.8/Python-2.6.8.tar.bz2 [ 111]

https://www.python.org/ftp/python/2.6.8/Python-2.6.8.tar.bz2.asc

extract и установите

gpg --verify Python-2.6.8.tar.bz2.asc 
tar -xvf  Python-2.6.8.tar.bz2 
cd Python-2.6.8
./configure --enable-shared --enable-ipv6 --enable-unicode=ucs4 --with-system-ffi --with-threads
make -j5
make install
0
ответ дан 10 September 2013 в 15:42

Снова я отвечу себе на свой собственный вопрос ради других:

ошибка была связана с неверным PATH, введя

which python

, команда вернула путь, который НЕ был системным путем по умолчанию в Python.

Gdb ищет установку Python по умолчанию, поэтому в моем случае этого было достаточно, чтобы закомментировать команду исходного пути в моем .bashrc, которая переопределяла путь / usr / bin / python в PATH.

0
ответ дан 10 September 2013 в 15:42

Другие вопросы по тегам:

Похожие вопросы: