Gcc с параметрами "-S -save-temps" помещает промежуточные файлы в текущий каталог.C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Gcc с параметрами "-S -save-temps" помещает промежуточные файлы в текущий каталог.

Сообщение Anonymous »

Параметры -S -save-temps работают нормально, пока я не использую их для файлов с таким же именем.

Подумайте из следующей ситуации: у меня есть проект с основным каталогом и подкаталогом с именем subDir, и в обоих каталогах находятся файлы с именем file.c. Если я теперь вызову gcc -S -save-temps file.cpp subDir/file.c, будет создан только один промежуточный файл с именем file.i.
Это ожидаемое поведение, как сообщает мне файл man gcc, что промежуточные файлы всегда будут размещаться по текущему пути при использовании -save-temps.< /p>

Моя проблема в том, что я работаю над проектами, о которых заранее не знаю. Вполне возможно, что кто-то создал вышеупомянутый пример в своих Makefiles. В этом случае я бы застрял, потому что мне нужны оба промежуточных файла.

Несколько слов о системе, которую я создаю (для лучшего понимания): Мой инструмент использует make --just-print для сбора вызовов вызывает make-файл проекта. Я сканирую эти вызовы на наличие вызовов компилятора и добавляю параметры -save-temps и -S. Цель состоит в том, чтобы получить каждый предварительно обработанный файл, который используется в процессе компиляции проекта.

Есть ли у вас идеи, как я могу получить каждый предварительно обработанный файл? файл, даже если вышеупомянутый пример должен появиться?

Подробнее здесь: https://stackoverflow.com/questions/216 ... t-director
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»