Есть ли у GNU ld возможность полностью исключить -динамический -компоновщик (PT _INTERP )?

Я экспериментирую с концепцией чистых -статических -связанных исполняемых файлов PIE в Linux, но столкнулся с проблемой, заключающейся в том, что компоновщик GNU binutils настаивает на добавлении заголовка PT _INTERP к выходным данным. двоичный, когда используется -pie, даже если также задано -static. Есть ли способ подавить это поведение? То есть есть ли способ конкретно указать GNU ld не записывать определенные заголовки в выходной файл? Возможно, с помощью скрипта компоновщика?

(Пожалуйста, не отвечайте утверждениями, что это не сработает; Я прекрасно понимаю, что программа по-прежнему нуждается в обработке перемещения -загрузки -адреса -относительных перемещений только из-за того, что я использую-Bsymbolic-и у меня есть специальный код запуска вместо стандартного Scrt1.oдля обработки это. Но я не могу заставить его вызываться без динамического компоновщика, который уже работает и выполняет работу, если не отредактировать заголовок PT_INTERPиз двоичного файла в шестнадцатеричном формате.)

20
задан R.. 5 May 2012 в 21:01
поделиться