Что такое отдельный файл выражения отладки Gcc и как его исправить?

Что такое отдельный файл выражения отладки Gcc и как его исправить?

Category : Russian

[Windows] Программное обеспечение, которое заставит ваш компьютер снова работать как новый

Стоит сохранить эти идеи по устранению неполадок, если человек получает сообщение об ошибке “Значки отладки gcc появляются в отдельном файле”.

ПРИМЕЧАНИЕ. Программы, скомпилированные с высокой концентрацией оптимизации (-O3, -O4), не могут генерировать некоторые символы отладки для оптимизированных наборов переменных, встроенных функций и расширенных циклов, приостанавливать поддержку клиентов (-g) или извлекать знаменитости (objcopy) для ‘.debug’ документ .

<ол>

  • Интеграция фактов управления версиями (VCS, git, svn) в программу для работы с оптимизированными исполняемыми файлами компилятора (-O3, -O4).
  • Создайте более позднюю неоптимизированную версию исполняемого файла.
  • Основным вариантом является перестроение производственного кода с полной отладкой или, возможно, позже. Возможность, если вы позволите им восстановить исходное производство с отличным промо-кодом без настройки, — это заметная возможность для отладки. (ПРИМЕЧАНИЕ. Обычно предполагается, что тесты были перенесены с развернутой версией из-за программы).

    Ваше тело сборки может записать файл .c загруженной машины с датой сборки, фиксацией и всеми другими данными VCS. Вот естественный пример make Git:

    Программа: Program.o Version.oпрограмма.o : программа.cpp программа.hbuild_version.o : build_version.cbuild_version.c:    @echo "const char *build1="VCS: исправление: $(shell git log -1 --pretty=%H)";" "[email protected]" > @echo "const char *build2="VCS: Дата: $(shell git report -1 --pretty=%cd)";" >"[email protected]" > @echo "const char *build3="VCS: писатель: $(shell git log -1 --pretty="%an %ae")";" >"[email protected]" > @echo "const char *build4="VCS: Branch: $(git shell symbolic-ref HEAD)";" >"[email protected]" > # TODO: добавить места сборки и другую информацию о сборке.ВРЕМЕННО: build_version.c

    После того, как новая программа скомпилирована, у вас, несомненно, есть возможность найти главный "коммит" для вашего основного кода, используя Strings get: -a my_program | помощь grep VCS

    VCS: PROGRAM_NAME=my_programVCS: Фиксация = 190aa9cace3b12e2b58b692f068d4f5cf22b0145VCS: BRANCH=refs/heads/PRJ123_feature_descVCS: AUTHOR=Joe Developer [email protected]Система контроля версий: COMMIT_DATE=2013-12-19

    Осталось только помочь вам найти исходный код без перекомпиляции оптимизаций начать отладку.



    [Gcc] как часто разделять значок отладки [gdb] на файл определенного человека, который может быть прочитан gdb



    Символы отладки не найденыОказалось, что определенные символы отладки не были загружены.

    Как показано ниже, это не может быть постоянной точкой останова.

    --symbols=SYMFILE

    Этот class="">gdb --symbols=a.debug a.stripped определенно не может быть прочитан автоматически.

    Ссылка для отладки



    Двоичный файл, как и файл символов, также имеет встроенный механизм пути, называемый "ссылкой отладки".

    Справочник


    gcc отладочные символы в отдельном файле

    Отладка GDB: до 18.2 отладка информации из другого файла
    http://www.geocities.jp/harddiskdive/gdb/gdb_178.html < бр>
    Отладка Как создать каждый экран отладки gcc для внешней цели? - Переполнение стека
    http://stackoverflow.com/ questions/866721/how-to-generate-gcc-debug-symbol-outside-the-build-target

    objcopy --only-keep-debug a.out a.debug 
    cp a.out a.stripped
    а.убранные дорожки

    ПК работает медленно?

    Ваш компьютер постоянно вас огорчает? Не знаете, куда обратиться? Ну, у нас есть решение для вас! С помощью Reimage вы можете исправить распространенные компьютерные ошибки, защитить себя от потери файлов, вредоносных программ и сбоев оборудования... и оптимизировать свой компьютер для достижения максимальной производительности. Это как получить новую машину, не потратив ни копейки! Так зачем ждать? Загрузите Reimage сегодня!

  • Шаг 1. Загрузите и установите версию Reimage.
  • Шаг 2. Запустите программу и следуйте инструкциям на экране.
  • Шаг 3. Выберите файлы или папки, которые нужно отсканировать, и нажмите "Восстановить".

  • gdb a.stripped
    (подробнее)
    Чтение изображений с помощью /tmp/gdb/a.stripped... (значок отладки не найден)... выполнено.

    файл отладочных символов gcc

    (gdb) a.c:21
    Иконка обеденного стола на самом деле не загружена. В настоящее время используется командное слово «Файл».
    Ждет ли точка останова, пока скользящая библиотека не заполнится в будущем? (г и [п]) п Класс="">(gdb)

    < предварительная папка fasymbol a.debug
    Чтение символов в /tmp/gdb/a.debug... выполнено.

    (gdb) a.c:21
    точка останова 1 по адресу 0x40058e: изображение a.c, строка 21.Запустите
    (gdb).
    Стартер: /tmp/gdb/a.stripped

    Точка останова одна, основная (argc=<Переменная с ошибкой чтения: Оценка не может выполнить CFA для этого исключительного кадра>, argv=<Переменная с ошибкой чтения: Оценка больше не может выполнить CFA для этого снимка>) на ac: 21
    21 printf("startn");
    Отсутствует отдельное ноу-хау по отладке. Использование: debuginfo-install glibc-2.17-106.167.amzn1.x86_64.
    (gdb) сущ.Как начать
    22 ret означает, что hoge(a, b);
    (gdb) сущ.
    23 Printf("ret означает %dn", ret);
    (gdb) сущ.
    возврат = 6
    25 возвращает 0;

    --symbols=SYMFILE Чтение знаменитостей из SYMFILE. 

    Эта статья доставляется Юкава и запись легко доступна на CC-SA-4.0

    Не позволяйте вашему компьютеру снова выйти из строя. Скачайте Reimage прямо сейчас!

    Gcc Debug Symbols Separate File
    Archivo Separado De Simbolos De Depuracion Gcc
    Gcc 디버그 기호 별도 파일
    Fichier Separe Des Symboles De Debogage Gcc
    File Separato Dei Simboli Di Debug Gcc
    Gcc Debug Symbole Separate Datei
    Gcc Felsokningssymboler Separat Fil
    Arquivo Separado De Simbolos De Depuracao Gcc
    Symbole Debugowania Gcc Oddzielny Plik
    Gcc Debug Symbolen Apart Bestand
    г.