Qt 5.10 fails to compile
-
I was trying to compile Qt from the latest (5.10.0) release, but it fails. The commands were:
./configure --prefix=/home/tuvok/src/qt-debug-5_10 -opensource -nomake tests -debug -confirm-license -webengine-proprietary-codecs make -j8
And the results are as follows:
ninja -C /home/tuvok/src/Qt/5.10.0/Src/qtwebengine/src/core/debug QtWebEngineCore ninja: Entering directory `/home/tuvok/src/Qt/5.10.0/Src/qtwebengine/src/core/debug' [4/9089] CXX obj/third_party/webrtc/modules/audio_processing/audio_processing/aec_state.o FAILED: obj/third_party/webrtc/modules/audio_processing/audio_processing/aec_state.o /usr/bin/g++ -MMD -MF obj/third_party/webrtc/modules/audio_processing/audio_processing/aec_state.o.d -DWEBRTC_APM_DEBUG_DUMP=0 -DWEBRTC_AUDIOPROC_DEBUG_DUMP -DWEBRTC_INTELLIGIBILITY_ENHA NCER=0 -DWEBRTC_NS_FLOAT -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DNO_TCMALLOC -DDISABLE_NACL -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROW SING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWTF_USE_DYNAMIC_ANNOTATIONS=1 -D_GLIBCXX_DEBUG=1 -DWEBRTC_ENABLE_PROTOBUF=1 -DWEBRTC_RESTRICT_LOGGING -DEXPAT_RELATIVE_PATH -DHAVE_SCTP -DENABL E_EXTERNAL_AUTH -DHAVE_WEBRTC_VIDEO -DHAVE_WEBRTC_VOICE -DLOGGING_INSIDE_WEBRTC -DUSE_WEBRTC_DEV_BRANCH -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_SOUND_ SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -Igen -I../../3rdparty/chromium -I../../3rdp arty/chromium/third_party/webrtc_overrides -I../../3rdparty/chromium/third_party -Igen -I../../3rdparty/chromium/third_party/protobuf/src -I../../3rdparty/chromium/third_party -I../../3r dparty/chromium/third_party/webrtc/modules/audio_coding/codecs/isac/main/include -I../../3rdparty/chromium/third_party/protobuf/src -Igen/protoc_out -I../../3rdparty/chromium/third_party /webrtc/common_audio/resampler/include -I../../3rdparty/chromium/third_party/webrtc/common_audio/signal_processing/include -I../../3rdparty/chromium/third_party/webrtc/common_audio/vad/i nclude -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -pthread -m64 -W all -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-unused-parameter -O0 -fno-omit-frame-pointer -g2 -fvisibility=hidden -std=gnu++11 -Wno-narrow ing -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -c ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc -o obj/third_party/webrtc/modules/audio _processing/audio_processing/aec_state.o ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc: In member function 'void webrtc::AecState::EchoAudibility::Update(rtc::ArrayView<const float>, cons t std::__debug::array<float, 64ul>&)': ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:274:40: error: call of overloaded 'abs(const float&)' is ambiguous std::max(std::abs(*result_x.first), std::abs(*result_x.second)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:274:68: error: call of overloaded 'abs(const float&)' is ambiguous std::max(std::abs(*result_x.first), std::abs(*result_x.second)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:276:40: error: call of overloaded 'abs(const float&)' is ambiguous std::max(std::abs(*result_s.first), std::abs(*result_s.second)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:276:68: error: call of overloaded 'abs(const float&)' is ambiguous std::max(std::abs(*result_s.first), std::abs(*result_s.second)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc: In member function 'void webrtc::AecState::EchoAudibility::UpdateWithOutput(rtc::ArrayView<const fl oat>)': ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:297:46: error: call of overloaded 'abs(const float&)' is ambiguous const float e_abs = std::max(std::abs(e_max), std::abs(e_min)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:297:63: error: call of overloaded 'abs(const float&)' is ambiguous const float e_abs = std::max(std::abs(e_max), std::abs(e_min)); ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:72:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/include/stdlib.h:751:12: note: candidate: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/bits/stl_algo.h:59:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/algorithm:62, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.h:14, from ../../3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:166:3: note: candidate: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:174:3: note: candidate: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/lib/gcc/x86_64-pc-linux-gnu/5.4.0/include/g++-v5/cstdlib:179:3: note: candidate: __int128 std::abs(__int128) abs(__GLIBCXX_TYPE_INT_N_0 __x) { return __x >= 0 ? __x : -__x; } ^ [13/9089] CXX obj/third_party/webrtc/modules/audio_processing/audio_processing/level_controller.o ninja: build stopped: subcommand failed. make[4]: *** [Makefile.gn_run:1069: run_ninja] Error 1 make[4]: Leaving directory '/home/tuvok/src/Qt/5.10.0/Src/qtwebengine/src/core' make[3]: *** [Makefile:80: sub-gn_run-pro-make_first] Error 2 make[3]: Leaving directory '/home/tuvok/src/Qt/5.10.0/Src/qtwebengine/src/core' make[2]: *** [Makefile:79: sub-core-make_first] Error 2 make[2]: Leaving directory '/home/tuvok/src/Qt/5.10.0/Src/qtwebengine/src' make[1]: *** [Makefile:47: sub-src-make_first] Error 2 make[1]: Leaving directory '/home/tuvok/src/Qt/5.10.0/Src/qtwebengine' make: *** [Makefile:1028: module-qtwebengine-make_first] Error 2
Is this a known problem? How should I fix this?
-
It seems the problem solved itself. The funny thing about Gentoo is, you can have multiple versions of certain packages installed in so called slots. After update I ended up with two gcc versions, the mentioned 5.4.0 and 6.4.0. For some reason Qt sources didn't like that (I didn't have any problems compiling other things).
-
Hi,
What Linux distribution are you using ?
Which which version of gcc ? -
It seems the problem solved itself. The funny thing about Gentoo is, you can have multiple versions of certain packages installed in so called slots. After update I ended up with two gcc versions, the mentioned 5.4.0 and 6.4.0. For some reason Qt sources didn't like that (I didn't have any problems compiling other things).