Bug 41425 - fpc при указании опции -Xg падает с ошибкой
Summary: fpc при указании опции -Xg падает с ошибкой
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: fpc (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Nobody's working on this, feel free to take it
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-11-24 12:45 MSK by Артём Курашов
Modified: 2023-01-17 09:58 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Артём Курашов 2021-11-24 12:45:58 MSK
В ALT p10 fpc при указании опции -Xg падает с ошибкой
---
Ошибка: Hе удается вызвать компоновщик, переход на внешнюю компоновку
Фатально: Пpи компиляции модyля произошло 1 ошибок, работа прервана
Фатально: Компиляция прервана
---
При детальном анализе выясняется, что он падает при выполнении objcopy.bfd, которого в ALT p10 нет. После создания симлинка fpc с опцией -Xg начинает падать при попытке выполнения отсутствующего strip.bfd.

Таким образом, команды
---
ln -s /usr/bin/objcopy /usr/bin/objcopy.bfd
ln -s /usr/bin/strip /usr/bin/strip.bfd
---
устраняют проблему.
Comment 1 Pavel Shilov 2023-01-17 09:54:34 MSK
Произвел проверку на платформе:
* workstation-10-x86-64

Версия пакета:
* fpc-3.2.2-alt4.x86_64

Шаги воспроизведения: 
1. Создать пример файла example.pas с содержимым:
program one;

uses crt;

BEGIN
	writeln('    *');
	writeln('   **');
	writeln('  ***');
	writeln(' ****');
END.
2. Запустить компиляцию: 
 $ fpc -Xg 1.pas

Фактический результат: 
Выводится ошибка
$ fpc -Xg 1.pas
Компилятор Free Pascal версии 3.2.2 [2022/06/20] для x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Целевая ОС: Linux for x86-64
Компиляция 1.pas
1.pas(4,5) Заметка: Локальная пеpеменная "i" не использyется
Компоновка 1
1.pas(11,1) Ошибка: Hе удается вызвать компоновщик, переход на внешнюю компоновку
1.pas(11,1) Фатально: Пpи компиляции модyля произошло 1 ошибок, работа прервана
Фатально: Компиляция прервана
Error: /usr/bin/ppcx64 returned an error exitcode

Ожидаемый результат: Файл скомпилирован
$ fpc -Xg 1.pas
Компилятор Free Pascal версии 3.2.2 [2022/06/20] для x86_64
Copyright (c) 1993-2021 by Florian Klaempfl and others
Целевая ОС: Linux for x86-64
Компиляция 1.pas
Компоновка 1
11 строк скомпилиpовано, 0.3 сек.

При создании символических ссылок:
# ln -s /usr/bin/objcopy /usr/bin/objcopy.bfd
# ln -s /usr/bin/strip /usr/bin/strip.bfd

Компиляция завершается без ошибок.