-->

Qt的,谷歌BreakPad和MacOS(Qt, Google BreakPad and MacOs

2019-09-17 00:47发布

在这里任何人谁成功打造上使用Qt的标准工具链没有xcode的MacOS的谷歌Breakpad?

我试图让现在仍然工作这个库两天没有成功。 我已经成功编译并运行它在Windows和Linux。 (由原来的谷歌-git仓库)。

但是库的MacOS版本已经失踪libbreakpad_client.a和makefile产生libbreakpad.a不包含异常处理程序。

http://screencast.com/t/V0mNiM3kZ

我发现了几个话题这个问题上这里一个计算器 ,但与最新的makefile的意见对我来说没有工作(或我没有正确复制生成文件)。

我也试图直接从Mozilla的仓库(版本10和11beta)下载更新的版本。 但是,当我试图编译Mozilla的版本,不存在与不确定的符号(在Mac和也可以在Linux),另一个错误。

我还发现阿列克西- breakpad QT间期 ,但这个版本也只有在Win和Linux正常工作。 在Mac存在的一些错误“未知的架构 - 你在PDP-11?”

我会很感激的人谁可以点我如何编译,并得到它的Mac下工作或谁可以给我breakpad的包装版本,可以在MacOS下使用标准make进行编译和在Qt应用程序中使用。

谢谢Ludek一起

Answer 1:

阿列克西的breakpad-QT是三岁,并在它的breakpad源不OSX上支持64位。

无法检测您的处理器类型是什么使得它抱怨“未知的架构 - ?你是在PDP-11”。

你一定需要一个较新版本breakpad,无论是从他们的SVN,或者从我breakpad-QT叉子: https://github.com/webitup/qt-breakpad

现在,如果你打算支持10.6(MACOSX_DEPLOYMENT_TARGET = 10.6),以及,你需要使用这个补丁breakpad源https://github.com/webitup/qt-breakpad/commit/71a9fdedd827e5939ba66bfcc0cd6c1c9fbbc87b ( - >我不认为10.6有PPC支持)

然后:

你显然是管理直接从源代码编译,所以,适合这种方式。

现在,如果你想从你的Qt应用程序/ lib中建立从breakpad一个框架,而不是,并链接到这一点,那么戴夫·狄考文的建议是要走的路(和他应有的信用)。 以下为我工作:

cd $BREAKPAD_SOURCE_TREE
xcodebuild -sdk macosx10.7 -project src/client/mac/Breakpad.xcodeproj -configuration Release -target Breakpad ARCHS=x86_64 ONLY_ACTIVE_ARCH=YES MACOSX_DEPLOYMENT_TARGET=10.6 GCC_VERSION=com.apple.compilers.llvmgcc42 

请注意,我只建设目标Breakpad,而不是所有的(好像你只需要一个 - 和测试使用所有的失败对我来说,虽然它产生可用的框架,无论哪种方式)。

并注意每本身,你并不需要的XCode - 只有命令行构建工具。

为了使用该框架在QT项目:

mac {
        QMAKE_LFLAGS += -F$$BREAKPAD_PATH/client/mac/build/Release/
        LIBS += -framework Breakpad
}

而且你应该设置。

最后:我也推了一些在我breakpad-QT叉源改变本身有它至少编译(OSX上!)对更新的版本breakpad的,但我不知道如果它不正常工作

我刚开始与叉 - 如果你想分享的经验和/或在那里犯了一些东西,只问。



文章来源: Qt, Google BreakPad and MacOs