大多数为 Qt 5.3.2 编译的二进制文件都是在没有调试信息的情况下构建的
Most binaries compiled for Qt 5.3.2 are built without debugging info
我正在尝试使用稍后使用 dsymutil 转储的调试信息构建 Qt 5.3.2 的发布版本。
这里是用于构建 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
标记进行配置。
我正在尝试使用稍后使用 dsymutil 转储的调试信息构建 Qt 5.3.2 的发布版本。
这里是用于构建 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
标记进行配置。