Как настроить компилятор так, чтобы при использовании опции -fdump-rtl-expand он выводил абсолютный путь?

Как можно изменить настройки для получения абсолютного пути файла вместо относительного при дампе RTL файлов, используя gcc с опцией `-fdump-rtl-expand`, не трогая Makefile?
  • 20 июня 2024 г. 9:21
Ответы на вопрос 2
Для получения абсолютного пути файла при дампе RTL файлов с помощью опции `-fdump-rtl-expand` в компиляторе gcc, можно использовать переменную среды GCC_EXEC_PREFIX.

Переменная GCC_EXEC_PREFIX позволяет указать путь, который будет использоваться в качестве префикса для имени файла при дампе RTL. Таким образом, можно задать абсолютный путь для файлов RTL, добавив путь к каталогу, где расположены исходные файлы.

Пример:

Предположим, что у вас есть исходный файл `example.c`, который вы компилируете с помощью gcc и хотите получить абсолютный путь к RTL файлам.

1. Установите переменную GCC_EXEC_PREFIX равной абсолютному пути к вашему рабочему каталогу, где находится исходный файл `example.c`.

```bash
export GCC_EXEC_PREFIX=/absolute/path/to/your/working/directory
```

2. Затем скомпилируйте исходный файл с опцией `-fdump-rtl-expand`.

```bash
gcc -fdump-rtl-expand example.c
```

Теперь при дампе RTL файлы будут сохраняться с абсолютным путем, начиная с указанного вами каталога в переменной GCC_EXEC_PREFIX.
Я думаю, что никак -- в каком виде пути к файлам компилятору переданы -- в таком виде они и будут использованы, как для чтения, так и для вывода в диагностике.
Похожие вопросы