Ответ 1
ОК, установка gdb на моей машине была завинчена. Нет никаких шансов, чтобы кто-нибудь мог это себе представить. Я перешел на другую машину, и теперь все хорошо.
Кто-нибудь знает, что означает эта ошибка?
Я работаю с Netbeans 8.0, gdb 7.8.1 на Linux Machine. Все было хорошо до двух дней назад, и я вдруг начал получать эту ошибку, когда я начинаю отладку, и я не знаю, что это значит.
До сих пор я пытаюсь очистить и reset все, о чем я мог подумать: переустановить netbeans, очистить все локальные файлы, снова сбросить код, отключить все точки останова и т.д. И т.д.
Может ли кто-нибудь помочь мне понять, что означает эта ошибка? Я никогда не устанавливал эти точки останова, где Netbeans их берут?
Спасибо заранее,
Рейчел
EDIT
Итак, теперь у меня есть немного больше деталей: Когда я пытаюсь отлаживать приложение напрямую с помощью GDB, без netbeans я получаю следующую ошибку:
Запуск программы:....
предупреждение: выбранная архитектура i386 несовместима с сообщенной целевой архитектурой i386: x86-64
предупреждение: Архитектура отклонила описание, предоставленное цели
Предупреждение:
Не удается вставить точку останова -1. Временное отключение точек останова разделяемой библиотеки: точка останова # -1 Не удается установить точку останова 1. Не удается получить доступ к памяти по адресу 0x8081527
как я могу понять, какой код\флаг в компиляции делает мое приложение i386? как я могу заставить его быть x86_64?
Еще раз спасибо.
ОК, установка gdb на моей машине была завинчена. Нет никаких шансов, чтобы кто-нибудь мог это себе представить. Я перешел на другую машину, и теперь все хорошо.
Я думаю, вы обновили систему, и последняя версия glib не поддерживает 32-битные приложения.
Вы можете найти, какие файлы во всех каталогах bin
и lib
в вашей системе были изменены за последние 2 дня? Если он используется для его поддержки, но обновленная версия этого не делает, то приложение, которое (возможно, без вашего ведома), скомпилированное как 32-разрядное, не будет действительной целью для всех стандартных инструментов на ящике.
Вы указываете целевую архитектуру с помощью -m32
или -m64
. Посмотрите, можете ли вы указать его явно, если вы компилируете и отлаживаете на разных машинах.