Какой формат делает статическую библиотеку (*.lib) использование файлов? Где я могу найти “Официальные” спецификации *.LIB файловой структуры / форматом?

Сейчас я нашел, что статические библиотеки в *отклоняют системы, другими словами, *.a библиотеки только архивы relocatables (*.o файлы) в формате площади.

  1. Что относительно статических библиотек (*.lib файлы) в окнах? В каком формате они?

  2. Я нашел статью (заархивированная копия 1, заархивированная копия 2), который объясняет *.lib файловую структуру. Но Где я могу найти "Официальные" спецификации *.lib файловой структуры / форматом?

  3. Кроме ar.exe mingw там какой-либо инструмент от Microsoft, которая извлекает перемещаемые объекты *.lib и *.a файлов?

Править:

Интересно, почему я не могу добраться до этого вопроса. Если нет никаких официальных спецификаций. Затем, как делает компилятор ('компоновщик', чтобы быть более корректным), устройства записи работают с *.LIB файлами?

9
задан Anton Samsonov 5 October 2018 в 13:08
поделиться

2 ответа

Я обнаружил, что файл *.LIB использует формат ar файла.

Официальные спецификации: Раздел 7. "Archive (Library) File Format" из Microsoft Portable Executable and Common Object File Format Specification описывает этот формат.

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

mingw ar отлично работает с файлами * .lib - даже с теми, которые созданы в VisualStudio.

Мы фактически использовали его в прошлом для извлечения частей библиотеки, в которых мы нуждались, когда она содержала какие-то другие вещи, с которыми мы не могли связываться (из-за конфликтов с другими библиотеками). Вроде хакерский, но работает.

2
ответ дан 4 December 2019 в 15:14
поделиться
Другие вопросы по тегам:

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