Как превратить "жирную" библиотеку в "обезжиренную" библиотеку?

Я пытаюсь удалить дублированный объект из библиотеки с арками armv6 и armv7, т.е.

$lipo -info libx.a Архитектуры в жирном файле: libx.a: armv6 armv7

Как и ожидалось, "ar d" не работает напрямую, поэтому я использовал "lipo -extract" для разделения библиотеки. Однако полученные библиотеки по-прежнему являются "жирной" архитектурой.

$ar d libx-armv6.a offendingduplicate.o ar: libx-armv6.a - это жирный файл (используйте libtool (1) или липо (1) и ar (1) на нем) ar: libx-armv6.a: Неверный файл тип или формат

$lipo -info x-armv6.a Архитектуры в файле жира: libx.a: armv6

Как я могу отключить библиотеку? (Вы можете представить себе виды ссылок, которые появляются при поиске "удалить липовый файл" в Google. Справка!)

Ответы

Ответ 1

Я не знаком с lipo, но из его man page, похоже, что вы должны это сделать:

lipo libx.a -thin armv6 -output libx-armv6.a
lipo libx.a -thin armv7 -output libx-armv7.a