Я пытаюсь создать Google Breakpad для Mac OS X как часть переноса приложения, основанную на ствольной версии 782.
Вики Breakpad указывает, что нужно собрать client / mac / Breakpad.xcodeproj, который производит Breakpad.framework, включая динамически связанную библиотеку, если я правильно понимаю.Существует также пример кода о том, как использовать это из приложения Objective-C, но все это кажется очень отличным от того, что кажется нормальным способом работы на других платформах, включая использование списков и других вещей, которые не являются частьюмоего приложения.Я бы предпочел сделать вещи как можно более похожими на разных платформах.
Например, this похоже на то, что Firefox использует Breakpad:
// include exception_handler.h from client/<platform>/handler,
// using ... here for brevity
#include "... exception_handler.h"
...
gExceptionHandler = new google_breakpad::
ExceptionHandler(tempPath.get(),
nsnull,
MinidumpCallback,
nsnull,
#if defined(XP_WIN32)
google_breakpad::ExceptionHandler::HANDLER_ALL);
#else
true);
#endif
В моемПроект, мы делаем то же самое и просто ссылаемся на exception_handler.lib
в Windows.Похоже, что в Linux Breakpad генерирует соответствующий libbreakpad_client.a
, с которым можно связать таким же образом, но не в Mac OS X. Если я сделаю
./configure
make
из корневого каталога breakpad a libbreakpad.a
генерируется, который не содержит обработчик исключений, а libbreakpad_client.a, который должен быть, не собирается.Вполне возможно, что я неправильно понял почти все, что касается обычного способа использования Breakpad, а также обычной процедуры создания внешних библиотек на Mac, поэтому любая помощь приветствуется.
Как мне собратьlibbreakpad_client.a
в Mac OS X?