Как заставить мой ELF работать как с новой, так и с старой версией glibc?

Когда я компилирую своего эльфа, это «лучшая практика», чтобы связать его с самой старой версией glibc, поэтому я буду работать как в новых, так и в старых версиях glibc.

т. е. если я использую realpath, который в readelf вывод glibc, который мы видим, имеет как версию GLIBC_2.0, так и версию GLIBC_2.3, я хочу использовать старую версию, чтобы мой ELF работал на glibc 2.0 / 1/2.

Но версия GLIBC_2.3, вероятно, была разработана и обновлена ​​с момента ее публикации, и я думаю, что версия GLIBC_2.0 не изменилась с момента опубликования glibc 2.3. Поэтому я думаю, что я хочу, чтобы мой эльф использовал версию GLIBC_2.3, когда она присутствует, а когда нет, – чтобы вернуться к версии GLIBC_2.0.

Возможно ли это? Или что я не понимаю?

One Solution collect form web for “Как заставить мой ELF работать как с новой, так и с старой версией glibc?”

Я никогда не слышал о такой практике, тем более, что это лучшая практика. Самое близкое, о чем я могу думать, это то, что если вы посмотрите на вредоносное ПО ELF, оно часто компилируется по сравнению с действительно старыми версиями ядра Linux и старыми версиями libc. Однако я не уверен, что считается лучшей практикой.

Я не думаю, что явное падение возможно, учитывая, как Linux получает исполняемый файл ELF в память. Все ядро ​​- это разделы карты файла ELF в память, в соответствии с PT_LOAD Pheaders файла. Linux также отображается в «интерпретаторе», который обычно /lib/ld-linux.so.2 или /lib64/ld-linux-x86-64.so.2 . Этот интерпретатор является частью libc, и он отвечает за любую динамическую связь с libc.so или любыми другими общими объектами.

Файл ELF связан с любыми доступными доступными объектами, поэтому я написал, что выбор явной версии невозможен. Все дело в интерпретаторе ELF.

  • Нужно общее руководство по созданию Linux Stream (LiS) в RedHat 6.2
  • Уязвимость Ghost - CVE-2015-0235
  • Как установить параметр i486 в процессе компиляции glibc системы x86_64?
  • Обновление ядра для Linux-системы без обновления пользовательских приложений / библиотек?
  • Как исправить ошибки ld-linux-x86-64.so.2 CRC?
  • glibc memory alloction: arenas и отладка
  • Компиляция для Red Hat 5.9
  • llvm и clang на CentOS 5 без прав root?
  • Являются ли ключевые слова в resolv.conf чувствительными к регистру?
  • Уязвимость призраков - перекомпилируйте программы C / C ++?
  • Освобождение программного обеспечения linux - совместимость
  • Interesting Posts

    Ошибка инициализации поддержки USB: Другая ошибка

    Подключение 3 соединений OpenVPN через скрипт оболочки

    Как я могу выполнить поиск по ширине с помощью `find`?

    Невозможно добавить новый режим в xrandr для внешнего монитора

    Используются ли изменения в crontab, когда файл сохраняется, или когда редактор закрыт?

    Количество нескольких ключевых слов на сайте

    Модуль vfat не загружается (я пробовал очевидные исправления)

    GPU ускорил транскодирование

    Audio Controller не работает на linux mint

    Как изменить вывод tcpdump для чтения человеком?

    Политика паролей для существующих учетных записей не обновляется после внесения изменений в login.defs

    airodump-ng – Каковы сокращения в столбце WPS?

    отправить супер ключ на удаленную сессию Citrix

    Как найти и подсчитать, сколько файлов содержит определенное слово?

    Сканирование исходящей почты Postfix для спама с помощью Spamassassin

    Linux и Unix - лучшая ОС в мире.