[Interest] [OS X] Qt 5.6.0 minimal build configuration (error compiling qlatincodec.cpp)
Samuel Gaist
samuel.gaist at edeltech.ch
Thu Mar 17 17:14:45 CET 2016
On 17 mars 2016, at 16:36, René J.V. Bertin <rjvbertin at gmail.com> wrote:
> Hi,
>
> I'm running into an issue building Qt 5.6.0 on OS X 10.9.5 :
>
> gmake[3]: Entering directory '/.../qt5-kde-devel/work/build/qtbase/src/tools/bootstrap'
> /usr/bin/clang++ -c -O3 -march=native -g -ffunction-sections -O2 -g -fPIC -std=c++11 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -mmacosx-version-min=10.7 -fno-exceptions -Wall -W -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_BOOTSTRAPPED -DQT_LITE_UNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CODECS -DQT_NO_DATASTREAM -DQT_NO_LIBRARY -DQT_NO_QOBJECT -DQT_NO_SYSTEMLOCALE -DQT_NO_THREAD -DQT_NO_UNICODETABLES -DQT_NO_USING_NAMESPACE -DQT_NO_DEPRECATED -DQT_NO_TRANSLATION -DQT_CRYPTOGRAPHICHASH_ONLY_SHA1 -DQT_NO_CAST_FROM_ASCII -DQT_BUILD_BOOTSTRAP_LIB -DQT_BUILDING_QT -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/src/tools/bootstrap -I. -I/Users/bertin/work/s
> rc/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/5.6.0 -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/5.6.0/QtCore -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtXml -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtXml/5.6.0 -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtXml/5.6.0/QtXml -I../../../include -I../../../include/QtCore -I/.../qt5-kde-devel/work/build/qtbase/include/QtXml -I/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/mkspecs/macx-clang -o .obj/qlatincodec.o /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/codecs/qlatincodec.cpp
> In file included from /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/codecs/qlatincodec.cpp:34:
> In file included from /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/codecs/qlatincodec_p.h:48:
> In file included from /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/qtextcodec.h:1:
> In file included from /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/codecs/qtextcodec.h:37:
> In file included from /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/qstring.h:1:
> /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/tools/qstring.h:756:55: error: no type named 'u16string' in namespace 'std'
> static inline QString fromStdU16String(const std::u16string &s);
> ~~~~~^
> /Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/tools/qstring.h:757:17: error: no type named 'u16string' in namespace 'std'
> inline std::u16string toStdU16String() const;
> ~~~~~^
> <SNIP lots of more errors>
> In file included from /Volumes/Debian/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/tools/qhashfunctions.h:39:
> In file included from /Volumes/Debian/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/qpair.h:1:
> /Volumes/Debian/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/tools/qpair.h:62:44: error: no member named 'declval' in namespace 'std'
> Q_DECL_NOEXCEPT_EXPR(noexcept(std::declval<T1&>() = p.first) && noexcept(std::declval<T2&>() = p.second))
> ~~~~~^
> /Volumes/Debian/Users/bertin/work/src/new/Qt/qt-everywhere-opensource-src-5.6.0/qtbase/include/QtCore/../../src/corelib/global/qcompilerdetection.h:1036:43: note: expanded from macro 'Q_DECL_NOEXCEPT_EXPR'
> # define Q_DECL_NOEXCEPT_EXPR(x) noexcept(x)
> ^
> <SNIP>
>
>
> This does not appear to be a limitation in the Xcode compiler (Xcode 6.2, Apple Clang 600) because when I use clang 3.8 I get the exact same errors.
>
> Configure command and summary are below (note the request for the 10.9 SDK which is ignored in the above compile command!).
>
> Any ideas? The same code in qstring.h doesn't cause issues in Qt 5.5.1 .
>
> %> configure -top-level -platform macx-clang -sdk macosx10.9 -prefix /opt/local -archdatadir /opt/local/libexec/qt5 -docdir /opt/local/share/doc/qt5 -headerdir /opt/local/include/qt5 -plugindir /opt/local/share/qt5/plugins -importdir /opt/local/share/qt5/imports -qmldir /opt/local/share/qt5/qml -datadir /opt/local/share/qt5 -libdir /opt/local/libexec/qt5/Library/Frameworks -bindir /opt/local/libexec/qt5/bin -libexecdir /opt/local/libexec/qt5/libexec -translationdir /opt/local/share/qt5/translations -sysconfdir /opt/local/etc/qt5 -examplesdir /Applications/MacPorts/Qt5/examples -testsdir /opt/local/share/qt5/tests -hostbindir /opt/local/libexec/qt5/bin -hostlibdir /opt/local/libexec/qt5/Library/Frameworks -hostdatadir /opt/local/share/qt5 -v -release -opensource -confirm-license -shared -force-pkg-config -no-evdev -no-linuxfb -no-kms -framework -no-rpath -no-pulseaudio -no-mtdev -system-harfbuzz -openssl-linked -no-xinput2 -no-xcb -no-xcb-xlib -no-libudev -no-egl -c++std c++11
> -make libs -make tools -nomake examples -nomake tests -verbose -no-pch -nis -cups -iconv -icu -fontconfig -dbus-linked -glib -directfb -no-use-gold-linker -optimized-qmake -system-sqlite -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite2 -no-sql-tds -no-openvg -force-debug-info -no-strip -no-separate-debug-info
>
> Configure summary
> Build type: macx-clang (x86_64, CPU features: cx16 mmx sse sse2 sse3 ssse3)
> qmake vars .......... QMAKE_CC = /usr/bin/clang QMAKE_CXX = /usr/bin/clang++ QMAKE_CFLAGS = -O3 -march=native -g QMAKE_CXXFLAGS = -O3 -march=native -g QMAKE_LFLAGS = -L/opt/local/lib -Wl,-headerpad_max_install_names -O3 -march=native -g styles += mac fusion windows DEFINES += QT_NO_MTDEV QT_LIBS_DBUS = -L/opt/local/lib -ldbus-1 QT_CFLAGS_DBUS = -I/opt/local/include/dbus-1.0 -I/opt/local/lib/dbus-1.0/include QT_HOST_CFLAGS_DBUS = -I/opt/local/include/dbus-1.0 -I/opt/local/lib/dbus-1.0/include QT_CFLAGS_GLIB = -D_REENTRANT -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include QT_LIBS_GLIB = -L/opt/local/lib -lgthread-2.0 -lglib-2.0 -lintl QMAKE_CFLAGS_FONTCONFIG = -I/opt/local/include -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include/harfbuzz -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include/libpng16 -I/opt/local/include/harfb
> uzz -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include -I/opt/local/include QMAKE_LIBS_FONTCONFIG = -L/opt/local/lib -lfontconfig -lfreetype DEFINES += QT_NO_LIBUDEV DEFINES += QT_NO_EVDEV DEFINES += QT_NO_TSLIB DEFINES += QT_NO_LIBINPUT sql-drivers = sql-plugins = sqlite qmake switches ......... -d
> Build options:
> Configuration .......... absolute_library_soname accessibility audio-backend avx avx2 c++11 compile_examples concurrent corewlan cups dbus dbus-linked fontconfig force_debug_info full-config getaddrinfo getifaddrs glib gstreamer-1.0 iconv icu ipv6ifname large-config largefile libproxy medium-config minimal-config nis nostrip opengl openssl-linked png qpa qpa qt_framework reduce_exports release release_tools shared small-config sse2 sse3 sse4_1 sse4_2 ssse3 system-freetype system-harfbuzz system-jpeg system-png system-sqlite system-zlib xrender
> Build parts ............ libs tools
> Mode ................... release (with debug info); optimized tools
> Using sanitizer(s)...... none
> Using C++ standard ..... c++11
> Using gold linker....... no
> Using new DTAGS ........ no
> Using PCH .............. no
> Using LTCG ............. no
> Target compiler supports:
> SSE2/SSE3/SSSE3 ...... yes/yes/yes
> SSE4.1/SSE4.2 ........ yes/yes
> AVX/AVX2 ............. yes/yes
> Qt modules and options:
> Qt D-Bus ............... yes (linked to dbus-1)
> 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 ................... yes
> Evdev .................. no
> FontConfig ............. yes
> FreeType ............... yes (system library)
> Glib ................... yes
> GStreamer .............. yes (1.0)
> GTK theme .............. no
> HarfBuzz ............... yes (system library)
> Iconv .................. yes
> ICU .................... yes
> Image formats:
> GIF .................. yes (plugin, using bundled copy)
> JPEG ................. yes (plugin, using system library)
> PNG .................. yes (in QtGui, using system library)
> libinput................ no
> Logging backends:
> journald ............... no
> syslog ............... no
> mtdev .................. no
> Networking:
> CoreWlan ............. yes
> getaddrinfo .......... yes
> getifaddrs ........... yes
> IPv6 ifname .......... yes
> libproxy.............. yes
> OpenSSL .............. yes (linked to the libraries)
> SecureTransport ...... no
> NIS .................... yes
> OpenGL / OpenVG:
> EGL .................. no
> OpenGL ............... desktop
> OpenVG ............... no
> PCRE ................... system
> pkg-config ............. yes
> PulseAudio ............. no
> QPA backends:
> DirectFB ............. no
> EGLFS ................ no
> EGLFS i.MX6 ........ no
> EGLFS i.MX6 Wayland. no
> EGLFS EGLDevice .... no
> EGLFS GBM .......... no
> EGLFS Mali ......... no
> EGLFS Raspberry Pi . no
> EGLFS X11 .......... no
> LinuxFB .............. no
> Mir client............ 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 system library)
> TDS .................. no
> tslib .................. no
> udev ................... no
> xkbcommon-x11........... no
> xkbcommon-evdev......... no
> zlib ................... yes (system library)
> NOTE: When linking against OpenSSL, you can override the default
> library names through OPENSSL_LIBS.
> For example:
> OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked
> NOTE: -optimized-tools is not useful in -release mode.
> Qt is now configured for building. Just run 'gmake'.
> Once everything is built, you must run 'gmake install'.
> Qt will be installed into /opt/local
> Prior to reconfiguration, make sure you remove any leftovers from
> the previous build.
>
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
Hi,
Looks like it's not using
QMAKE_CXXFLAGS += -stdlib=libc++
QMAKE_LFLAGS += -stdlib=libc++
However, why, I don't know.
Samuel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160317/3eb6c538/attachment.sig>
More information about the Interest
mailing list