Рейтинг:0

Как скомпилировать glibc (32-битную и 64-битную)?

флаг de

У меня есть программа, которая поставляется для нескольких платформ Linux и требует, чтобы все ссылки были скомпилированы в самом исполняемом файле.

Я понял, что их нужно будет скомпилировать, библиотеку *.a поместить в папку внутри проекта, добавить «-I//location//» для заголовков include и «-L//location». //" добавлено для самих библиотек.

Но по самому вопросу...

Как скомпилировать glibc (32-битную и 64-битную)?

Благодаря исследованиям с открытым исходным кодом я нашел эту ссылку и клонировал репозиторий, но не могу найти никакой документации о том, как его на самом деле скомпилировать.

git-клон git://sourceware.org/git/glibc.git

Ну, если быть более конкретным, я не нашел никакой информации о том, какие параметры использовать.

muru avatar
флаг us
Я думаю, вы хотите создать статически связанный исполняемый файл вашей программы, а не заниматься сборкой libc.
флаг de
Пожалуйста, объясни. Прямо сейчас у меня есть модифицированная версия OpenSSL (libcrypto.a и libssl.a) в моем проекте, и поэтому она статически связана. Я получаю сообщение об ошибке, что «статически связанные приложения требуют во время выполнения общих библиотек из версии glibc, используемой для связывания». Мой перевод: мой статический OpenSSL не может динамически использовать glibc; он также должен быть скомпилирован и динамически связан. Или мой перевод некорректен?
флаг hr
Относится ли ошибка к вызову конкретной динамической функции (например, `getaddrinfo` или `gethostbyname`)? Похоже, что это может иметь значение: [Скомпилируйте статический двоичный файл, код которого содержит функцию gethostbyname] (https://stackoverflow.com/a/15165424/4440445)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.