我的 Qt 5.5 应用程序在 MacOS X 雪豹 (10.6) 上崩溃,并带有下一个调用堆栈:
0 libc++.1.dylib 0x6d801002 0x6d801000 + 2
1 org.qt-project.QtCore 0x6c9440ea qRegisterResourceData(int, unsigned char const*, unsigned char const*, unsigned char const*) + 26
2 org.qt-project.QtCore 0x6ca9c577 QXmlUtils::isNCName(QStringRef const&) + 711
3 dyld 0x8fe0ed69 ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) + 235
4 dyld 0x8fe0d31a ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int) + 246
5 dyld 0x8fe0d2be ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int) + 154
6 dyld 0x8fe0d3cd ImageLoader::runInitializers(ImageLoader::LinkContext const&) + 61
7 dyld 0x8fe024a9 dyld::initializeMainExecutable() + 134
8 dyld 0x8fe0794e dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**) + 4189
9 dyld 0x8fe018b1 dyldbootstrap::start(macho_header const*, int, char const**, long) + 779
10 dyld 0x8fe01057 _dyld_start + 39
我使用开源版本的 libc++.dylib 和 libc++abi.dylib 来支持雪豹上的 C++11。没有 Qt 依赖项的 C++11 应用程序可以很好地与这些库配合使用。
我不能放弃 Qt 对 C++11 的支持,所以这个解决方案不适合我。