[Interest] compiler options on OS X

René J.V. Bertin rjvbertin at gmail.com
Thu May 21 16:39:39 CEST 2015


Hello,

I was just staring at build output (for Qt 5.4.1) scrolling over my screen, and noticed a few things among the compiler options given to ObjC++ files:

- "-fobjc-exceptions" "-fcxx-exceptions" "-fexceptions" ; I thought that Qt 5 was built without use of and support for exceptions internally?

- No optimisation or debug options at all, despite the fact that I used "-force-debug-info -no-strip -no-separate-debug-info" for configuring, and no option that (I think) would remove optimisation options. And indeed I see "-O3 -march=native -g" among the options passed to the C++ compiler.

What's going on here?

example commandline:
/usr/bin/clang -c -pipe -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -std=c++11 -stdlib=libc++ -mmacosx-version-min=10.7 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_PLATFORMSUPPORT_LIB -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/src/plugins/platforms/cocoa -I. -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport/5.4.1 -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport/5.4.1/QtPlatformSupport -I../../../../include -I../../../../include/QtPlatformSupport -I../../../../lib/QtGui.framework/Versions/5/Headers -I../../../../lib/QtGui.framework/Versions/5/Headers/5.4.1 -I../../../../lib/QtGui.framework/Versions/5/Headers/5.4.1/QtGui -I../../../../lib/QtWidgets.framework/Versions/5/Headers -I../../../../lib/QtWidgets.framework/Versions/5/Headers/5.4.1 -I../../../../lib/QtWidgets.framework/Versions/5/Headers/5.4.1/QtWidgets -I../../../../lib/QtPrintSupport.framework/Versions/5/Headers -I../../../../lib/QtPrintSupport.framework/Versions/5/Headers/5.4.1 -I../../../../lib/QtPrintSupport.framework/Versions/5/Headers/5.4.1/QtPrintSupport -I../../../../lib/QtCore.framework/Versions/5/Headers -I../../../../lib/QtCore.framework/Versions/5/Headers/5.4.1 -I../../../../lib/QtCore.framework/Versions/5/Headers/5.4.1/QtCore -I.moc -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers -I/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/mkspecs/macx-clang -F/usr/local/src/qt5-mac-devel-kde/work/build/qtbase/lib /usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm -o .obj/qcocoasystemtrayicon.o
[Logging clang options] "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" "-cc1" "-triple" "x86_64-apple-macosx10.7.0" "-emit-obj" "-mrelax-all" "-disable-free" "-disable-llvm-verifier" "-main-file-name" "qcocoasystemtrayicon.mm" "-mrelocation-model" "pic" "-pic-level" "2" "-mdisable-fp-elim" "-masm-verbose" "-munwind-tables" "-target-cpu" "core2" "-target-linker-version" "241.9" "-coverage-file" "/usr/local/src/qt5-mac-devel-kde/work/build/qtbase/src/plugins/platforms/cocoa/.obj/qcocoasystemtrayicon.o" "-resource-dir" "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.0" "-isysroot" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk" "-D" "QT_NO_MTDEV" "-D" "QT_NO_LIBUDEV" "-D" "QT_NO_EVDEV" "-D" "QT_NO_EXCEPTIONS" "-D" "_LARGEFILE64_SOURCE" "-D" "_LARGEFILE_SOURCE" "-D" "QT_NO_DEBUG" "-D" "QT_PLUGIN" "-D" "QT_PLATFORMSUPPORT_LIB" "-D" "QT_PRINTSUPPORT_LIB" "-D" "QT_WIDGETS_LIB" "-D" "QT_GUI_LIB" "-D" "QT_CORE_LIB" "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/src/plugins/platforms/cocoa" "-I" "." "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include" "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport" "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport/5.4.1" "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/include/QtPlatformSupport/5.4.1/QtPlatformSupport" "-I" "../../../../include" "-I" "../../../../include/QtPlatformSupport" "-I" "../../../../lib/QtGui.framework/Versions/5/Headers" "-I" "../../../../lib/QtGui.framework/Versions/5/Headers/5.4.1" "-I" "../../../../lib/QtGui.framework/Versions/5/Headers/5.4.1/QtGui" "-I" "../../../../lib/QtWidgets.framework/Versions/5/Headers" "-I" "../../../../lib/QtWidgets.framework/Versions/5/Headers/5.4.1" "-I" "../../../../lib/QtWidgets.framework/Versions/5/Headers/5.4.1/QtWidgets" "-I" "../../../../lib/QtPrintSupport.framework/Versions/5/Headers" "-I" "../../../../lib/QtPrintSupport.framework/Versions/5/Headers/5.4.1" "-I" "../../../../lib/QtPrintSupport.framework/Versions/5/Headers/5.4.1/QtPrintSupport" "-I" "../../../../lib/QtCore.framework/Versions/5/Headers" "-I" "../../../../lib/QtCore.framework/Versions/5/Headers/5.4.1" "-I" "../../../../lib/QtCore.framework/Versions/5/Headers/5.4.1/QtCore" "-I" ".moc" "-I" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers" "-I" "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/AGL.framework/Headers" "-I" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/mkspecs/macx-clang" "-F/usr/local/src/qt5-mac-devel-kde/work/build/qtbase/lib" "-I/opt/local/include" "-stdlib=libc++" "-Wall" "-W" "-std=c++11" "-fdeprecated-macro" "-fdebug-compilation-dir" "/usr/local/src/qt5-mac-devel-kde/work/build/qtbase/src/plugins/platforms/cocoa" "-ferror-limit" "19" "-fmessage-length" "132" "-fvisibility" "hidden" "-fvisibility-inlines-hidden" "-stack-protector" "1" "-mstackrealign" "-fblocks" "-fobjc-runtime=macosx-10.7.0" "-fencode-extended-block-signature" "-fobjc-exceptions" "-fcxx-exceptions" "-fexceptions" "-fdiagnostics-show-option" "-fcolor-diagnostics" "-vectorize-slp" "-o" ".obj/qcocoasystemtrayicon.o" "-x" "objective-c++" "/usr/local/src/qt5-mac-devel-kde/work/qt-everywhere-opensource-src-5.4.1/qtbase/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm"



More information about the Interest mailing list