XCode: ошибка компоновщика Apple Mach-O с новой iOS 6 при добавлении самостоятельно созданной статической библиотеки

Я создал файлы статической библиотеки и добавил их в My Project XCode во время компиляции через Apple Mach-O Linker Error,

My Static libraries
1.libMathLibrary.a
2.libDineshLibrary.a

я проверил

  1. Target->Build Phases ->Link Binary with Libraries добавлена ​​моя статическая библиотека

  2. LIBRARY_SEARCH_PATHS = $(inherited) "$(SRCROOT)/staticlb/libMathLibrary" "$(SRCROOT)/staticlb/libDineshLibrary" добавить путь к статической библиотеке.

Как решить эту проблему. Пожалуйста, поделитесь своими идеями, я надеюсь, что это поможет мне .. Спасибо.


person GR.    schedule 08.08.2013    source источник
comment
какую ошибку компоновщика вы получаете?   -  person hpp    schedule 08.08.2013
comment
Ошибка привязки статической библиотеки libDineshLibrary Неопределенные символы для архитектуры armv7s: _OBJC_CLASS_$_libDineshLibrary, на которые ссылается: objc-class-ref в ViewController.o   -  person GR.    schedule 08.08.2013
comment
убедитесь, что вы добавили все необходимые фреймворки.   -  person hpp    schedule 08.08.2013
comment
Я обнаружил, что когда я создал статическую библиотеку в режиме симулятора, она будет поддерживать xcode с убедительным симулятором только тогда, когда она скомпилируется на устройстве, а также через ошибки компоновщика, наоборот, на устройстве.   -  person GR.    schedule 08.08.2013
comment
Это ссылка, которую я упомянул для создания статической библиотеки: icodeblog .com/2011/04/07/creating-static-libraries-for-ios   -  person GR.    schedule 08.08.2013


Ответы (1)


Я нашел решение своей проблемы

После создания собственных файлов статической библиотеки расширений .a

1. **libdevice.a** (device mode compile static library file)
2. **libsimulator.a** (simulator mode compile static library file)

Преобразуйте две статические библиотеки режима компиляции в одну общую статическую библиотеку расширения .a

в вашем терминале

lipo -create libdevice.a libsimulator.a -output libcommonlibrary.a

Новый файл общей статической библиотеки libcommonlibrary.a будет поддерживать компиляцию как симулятора, так и устройства.

пожалуйста, укажите ссылку: http://blog.boreal-kiss.net/2011/03/15/how-to-create-universal-static-libraries-on-xcode-4/

person GR.    schedule 09.08.2013