Мне нужны статические библиотеки для статичного соединения?

Десятичное значение будет

20h = 0x16^0 + 2x16^1 = 0x1 + 2x16 = 0 + 32 = 32

в десятичной записи или (32)10.

Для 40h в гекса у нас будет 64 в десятичном виде, для EOH у нас будет 224 в десятичном виде.

9
задан Liran Orevi 20 June 2009 в 18:05
поделиться

4 ответа

Да, вам нужны статические библиотеки для создания статически скомпонованного исполняемого файла.

Статические библиотеки - это пакеты скомпилированных объектов. Когда вы статически связываетесь с библиотекой, это фактически то же самое, что брать результаты компиляции этой библиотеки, распаковывать их в вашем текущем проекте и использовать их, как если бы они были вашими собственными объектами.

Динамические библиотеки уже связаны. Это означает, что некоторая информация, такая как перемещения, уже исправлена ​​и удалена.

Кроме того, динамические библиотеки должны быть скомпилированы как независимый от позиции код. Это не ограничение для статических библиотек и приводит к значительной разнице в производительности на некоторых распространенных платформах (например, x86).

11
ответ дан 4 December 2019 в 10:34
поделиться

Все библиотеки, которые вы связываете в статически скомпонованную программу, должны быть статическим вариантом. Хотя динамические (libfoo.so) и статические (libfoo.a) библиотеки имеют в себе одни и те же функции, они представляют собой файлы разных форматов, поэтому вам нужен соответствующий тип для вашей программы.

2
ответ дан 4 December 2019 в 10:34
поделиться

Статической компиляции не существует, есть только статическая компоновка. А для этого вам нужны статические библиотеки. Разница между статической и динамической компоновкой заключается в том, что в первом случае имена разрешаются во время компоновки (сразу после времени компиляции), тогда как во втором случае они разрешаются сразу после запуска программы.

Статические и динамические библиотеки может содержать или не содержать одну и ту же информацию в зависимости от множества факторов. Решение о том, связывать ли код статически или динамически, является важным и часто влияет на архитектуру приложения.

6
ответ дан 4 December 2019 в 10:34
поделиться

Другой вариант - Ermine ( http://magicErmine.com ) Это похоже на статификатор, но он может обрабатывать рандомизацию памяти.

1
ответ дан 4 December 2019 в 10:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: