Как избежать символов STT_GNU_IFUNC в вашем двоичном файле?

Мне нужно развернуть на Red Hat 4.1.2 (с gcc 4.1.2). Я использую GCC 4.6.1 в Ubuntu 11.10 для разработки. К сожалению, некоторые из двоичных файлов, которые создает мой процесс сборки, нельзя использовать на машине RedHat.Причина, по-видимому, заключается в изменении ABI, которое, согласно , еще один вопрос Stackoverflow возник в результате введения символов STT_GNU_IFUNC. Есть ли способ предотвратить экспорт любых таких символов, чтобы мой двоичный файл мог использовать старый ABI? Я использовал nm для поиска любых символов типа «i» в моем двоичном файле, но не нашел ни одного.

Я спрашиваю об этом, потому что некоторые из моих других двоичных файлов, а также некоторые сторонние библиотеки, которые я создаю (tbb, boost), не используют новый ABI и поэтому отлично работают на машине RedHat.

Надеюсь, что это ясно. Заранее спасибо.

9
задан Community 23 May 2017 в 11:46
поделиться