Quantcast
Channel: Qt DevNet forums: Installation and Deployment
Viewing all articles
Browse latest Browse all 2113

Build failure of Qt 5.2 on Mac OS 10.9 with Xcode 5.0.2 - can't find MacPorts ICU

$
0
0
Hi All, Nice to see Qt 5.2 released :) At the moment I’m not able to build it, though. My configure line looks like this: ../qt-everywhere-opensource-src-5.2.0/configure -sdk macosx10.9 -warnings-are-errors -system-proxies -no-linuxfb -no-directfb -no-dbus -pch -optimized-qmake -v -no-compile-examples -nomake examples -no-glib -no-c++11 -opensource -confirm-license -force-debug-info -debug-and-release -prefix `(cd ../qt-everywhere-opensource-src-5.2.0-deploy/; pwd -P)` -icu -I /opt/local/include -L /opt/local/lib … as you can see, I add MacPorts’ directories using the -I and -L directives. The configuration script is thus able to see the ICU which I have installed there, and rewards me with this line in its summary output:   ICU .................... yes When I subsequently type “make” to perform the build, though, it does not get very far before failing in the following way: cd corelib/ && ( test -e Makefile || /Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0-build/qtbase/bin/qmake /Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/corelib/corelib.pro -o Makefile ) && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile /Applications/Xcode.app/Contents/Developer/usr/bin/make -f Makefile.Debug all /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -c -pipe -g -gdwarf-2 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.6 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_XCB -DQT_NO_XKBCOMMON -DQT_NO_USING_NAMESPACE -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_USE_ICU -DPCRE_HAVE_CONFIG_H -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/mkspecs/macx-clang -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/corelib -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/include -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/include/QtCore -I../../include -I../../include/QtCore -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/include/QtCore/5.2.0 -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/include/QtCore/5.2.0/QtCore -Iglobal -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/3rdparty/pcre -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/3rdparty/harfbuzz/src -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/3rdparty/md5 -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/3rdparty/md4 -I/Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/3rdparty/sha3 -I.moc/debug -I. /Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/corelib/tools/qtimezoneprivate_mac.mm -o .obj/debug/qtimezoneprivate_mac.o In file included from /Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/corelib/tools/qtimezoneprivate_mac.mm:43: /Users/williamg/Projects/Development/Vendor/qt-everywhere-opensource-src-5.2.0/qtbase/src/corelib/tools/qtimezoneprivate_p.h:61:10: fatal error: 'unicode/ucal.h' file not found #include <unicode/ucal.h>          ^ 1 error generated. make[4]: *** [.obj/debug/qtimezoneprivate_mac.o] Error 1 make[3]: *** [debug-all] Error 2 make[2]: *** [sub-corelib-make_first] Error 2 make[1]: *** [sub-src-make_first] Error 2 make: *** [module-qtbase-make_first] Error 2 As can be seen there, the include path I gave to the configure script (which allowed /it/ to find ICU and switch it on for the build) is not being passed to the compiler for the building of this file. The required header is present, provided by MacPorts: -rw-r--r--  1 root  admin    51K 19 Nov 03:27 /opt/local/include/unicode/ucal.h Is this a bug? Is there some other way in which I should make the ICU of MacPorts visible to the Qt build? More broadly, do I /need/ ICU to build QtWebKit on Mac, as I do on Windows? The reading I’ve done indicates that I do, but it’s not all that clear! If I can leave ICU switched off and still build QtWebKit, then that’s fine for me. Likewise, do I /need/ to switch off C++11 if I am to build for Mac OS 10.6 (which I do wish to do) using the Apple toolchain? I believe that because that OS version does not ship libc++, only libstdc++, so I must either eschew C++11 or ship libc++ myself (which is easier said than done ;) Anyway, that aside, thanks for any ideas or suggestions regarding the key question here, about ICU and include paths when configuring / building Qt 5.2!

Viewing all articles
Browse latest Browse all 2113

Trending Articles