大多数为 Qt 5.3.2 编译的二进制文件都是在没有调试信息的情况下构建的
Most binaries compiled for Qt 5.3.2 are built without debugging info
我正在尝试使用调试信息构建Qt 5.3.2的发布版本,后来我使用dsymutil转储了这些信息。
以下是用于构建Qt的配置摘要:
Configure summary
Build type: macx-clang (x86_64, CPU features: cx16 mmx sse sse2 sse3 ssse3)
qmake vars .......... QMAKE_CC = /usr/bin/cc QMAKE_CXX = /usr/bin/c++ QMAKE_CFLAGS = -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -I/usr/include -mmacosx-version-min=10.8 -mssse3 -gdwarf-4 -fslp-vectorize -fvectorize QMAKE_LFLAGS = -L/usr/lib -mmacosx-version-min=10.8 styles += mac fusion windows DEFINES += QT_NO_MTDEV QMAKE_CFLAGS_FONTCONFIG = -I/usr/local/Cellar/fontconfig/2.11.1/include -I/usr/local/Cellar/freetype/2.5.3_1/include/freetype2 QMAKE_LIBS_FONTCONFIG = -L/usr/local/Cellar/fontconfig/2.11.1/lib -L/usr/local/Cellar/freetype/2.5.3_1/lib -lfontconfig -lfreetype DEFINES += QT_NO_LIBUDEV DEFINES += QT_NO_EVDEV INCLUDEPATH += "/usr/include" LIBS += -L"/usr/lib" sql-drivers = sql-plugins = sqlite qmake switches .........
Build options:
Configuration .......... absolute_library_soname accessibility audio-backend concurrent corewlan fontconfig force_debug_info full-config getaddrinfo getifaddrs harfbuzz iconv ipv6ifname large-config largefile medium-config minimal-config opengl openssl-linked pcre png precompile_header qpa qpa qt_framework reduce_exports release rpath shared small-config sse2 sse3 ssse3 system-freetype system-jpeg system-png system-zlib
Build parts ............ libs tools examples
Mode ................... release (with debug info)
Using C++11 ............ no
Using PCH .............. yes
Target compiler supports:
SSE2/SSE3/SSSE3 ...... yes/yes/yes
SSE4.1/SSE4.2 ........ no/no
AVX/AVX2 ............. no/no
Qt modules and options:
Qt D-Bus ............... no
Qt Concurrent .......... yes
Qt GUI ................. yes
Qt Widgets ............. yes
Large File ............. yes
QML debugging .......... yes
Use system proxies ..... no
Support enabled for:
Accessibility .......... yes
ALSA ................... no
CUPS ................... no
Evdev .................. no
FontConfig ............. yes
FreeType ............... yes (system library)
Glib ................... no
GTK theme .............. no
HarfBuzz ............... yes
Iconv .................. yes
ICU .................... no
Image formats:
GIF .................. yes (plugin, using bundled copy)
JPEG ................. yes (plugin, using system library)
PNG .................. yes (in QtGui, using system library)
journald ............... no
mtdev .................. no
Networking:
CoreWlan ............. yes
getaddrinfo .......... yes
getifaddrs ........... yes
IPv6 ifname .......... yes
OpenSSL .............. yes (linked to the libraries)
NIS .................... no
OpenGL / OpenVG:
EGL .................. no
OpenGL ............... desktop
OpenVG ............... no
PCRE ................... yes (bundled copy)
pkg-config ............. yes
PulseAudio ............. no
QPA backends:
DirectFB ............. no
EGLFS ................ no
KMS .................. no
LinuxFB .............. no
XCB .................. no
Session management ..... yes
SQL drivers:
DB2 .................. no
InterBase ............ no
MySQL ................ no
OCI .................. no
ODBC ................. no
PostgreSQL ........... no
SQLite 2 ............. no
SQLite ............... yes (plugin, using bundled copy)
TDS .................. no
udev ................... no
xkbcommon .............. no
zlib ................... yes (system library)
然而,大多数构建的二进制文件缺乏调试信息,即 dsymutil 说没有调试符号。除了2个框架:QtCore.framework和QtGui.framework。
我使用 dsymutil -o
命令转储调试信息。
通过添加要配置的-no-strip
标志来修复。
相关文章:
- 用于自定义调试构建的 CMake qt 输入库后缀
- GCC:在调试构建中优化的静态数据成员
- BOOST :: MUTEX版本与调试构建
- MS Visual C 释放和调试构建之间的不同行为的可能原因
- STD ::复制在调试构建中失败
- 获得MAC地址的代码似乎会损坏内存,但仅在发布构建中而不是调试构建
- 错误LNK2019:未解决的外部符号-MSVC调试构建功能模板
- 在Windows 10上使用MINGW构建的Clang的调试构建无法运行
- Windows 10 UWP桌面桥应用程序(C ):调试构建中的VCLIBS依赖关系
- 预编译HEADERS在使用Qt Creator/qmake/MinGw的调试构建中不起作用
- 调试构建C++ "delete"慢
- 调试构建和发布构建、区别和用途是什么意思
- QCreator:如何创建调试构建配置
- 如何使用调试构建 libwebsockets(即 -g 以便我可以使用 gdb)?(我在libwebsockets函数上遇到段错误,ssl_ctrl() )
- 如何将静态发布库链接到调试构建中
- Visual Studio -严格调试构建
- 调试构建hello world崩溃,取决于优化水平
- 编写一个makefile以在调试构建中使用-D_GLIBCXX_DEBUG
- 在调试构建中,数据突然变为NULL
- GCC c++ 11调试构建,发布失败