On Wed, Jan 13, 2016 at 02:17:16PM +0100, Matthias Klose wrote: > Here are some first results from a distro test rebuild using GCC 6. > A snapshot of the current Ubuntu development series was taken on > 20151218 for all architectures (amd64, arm64, armhf, i386/i686, > powerpc, ppc64el, s390x), and rebuilt unmodified using the current > GCC 5 branch, and using GCC 6 20160101 (then updated to 20160109). > > I haven't yet looked into the build failures except for the ICEs. > If somebody wants to help please let me know so that work isn't > duplicated.
Hi, I've flicked through the 42 unique arm64 failures and given them a first-step triage. The majority of issues look to be source based and more than a few can be blamed on the move to C++14. Two of these I don't understand (qutecom_2.2.1+dfsg1-5.2ubuntu2, sitplus_1.0.3-4.1build1). The VLC one is strange, and I don't know how it has ever managed to build! I generated my set of arm64 failures as so: grep xenial-arm64 00list | cut -f 1 -d " " | sed "s@^@http://people.canonical.com/~doko/tmp/gcc6-regr/@" | xargs wget gunzip *.gz Triage notes follow... Hope this helps, if it is useless, let me know what would be a better way for me to help out with the AArch64 stuff. Thanks, James --- I used "grep -v GPG" to remove error lines that looked like: W: GPG error: http://ppa.launchpad.net xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1E9377A2BA9EF27F This also removed two packages from my list that had system/package failures: gnuais_0.3.3-3 [ Package dependency not met ] sbuild-build-depends-gnuais-dummy : Depends: libosmgpsmap-1.0-0-dev (>= 1.0.2) but it is not installable libnih_1.0.3-4 [ Interrupted build ] Session terminated, terminating shell... --- I used "grep -v "debian\/rules" to remove error lines that looked like: dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2 This removed eight packages from my list which had system/environment issues, ran out of memory, or failed a symbol match check. ardour_1:4.4~dfsg-1 dune-grid_2.4.0-1 mysql-workbench_6.3.4+dfsg-3build1 [ Memory exhausted ] virtual memory exhausted: Cannot allocate memory marble_4:15.08.2-0ubuntu3 [ Expected symbol mismatch ] dpkg-gensymbols: warning: debian/libmarblewidget-qt5-22/DEBIAN/symbols doesn't match completely debian/libmarblewidget-qt5-22.symbols - (optional=templinst)_ZN12QtConcurrent19RunFunctionTaskBaseIvE3runEv@Base 4:15.08.0 - (optional=templinst|arch=!amd64 !i386)_ZN14QSharedPointerIN6Marble22MarbleQuickItemPrivateEE5derefEPN15QtSharedPointer20ExternalRefCountDataE@Base 4:15.08.0 - (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI5QListIdELb1EE6CreateEPKv@Base 4:15.08.0 - (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI5QListIdELb1EE6DeleteEPv@Base 4:15.08.0 - (optional=templinst)_ZN17QtMetaTypePrivate23QMetaTypeFunctionHelperI7QVectorIPN6Marble16GeoDataPlacemarkEELb1EE6CreateEPKv@Base 4:15.08.0 <.... etc... > shellcheck_0.3.7-1 [ Memory Exhausted ] ghc: out of memory (requested 1048576 bytes) telepathy-qt5_0.9.6.1-0ubuntu3 [ Expected symbol mismatch ] dpkg-gensymbols: warning: debian/libtelepathy-qt5-0/DEBIAN/symbols doesn't match completely debian/libtelepathy-qt5-0.symbols - _ZN10QByteArray7reserveEi@Base 0.9.6.1-0ubuntu2~gcc5.1 xapian1.3-core_1.3.3-0ubuntu2 [ Network testsuite failures (environment issue?) ] Running test: keepalive1... FAILED ./apitest backend remoteprog_glass: 248 tests passed, 1 failed, 4 skipped. Running test: keepalive1... NetworkTimeoutError: REMOTE:Timeout expired while trying to read; context was: .glass/db=apitest_simpledata (context: remote:tcp(127.0.0.1:1239)) Running test: bigoaddvalue1... std::bad_alloc: std::bad_alloc ./apitest backend remotetcp_glass: 247 tests passed, 2 failed, 4 skipped. ./apitest total: 2338 tests passed, 3 failed, 42 skipped. FAIL: apitest xapian-core_1.2.21-1.2 [ Network testsuite failures (environment issue?) ] Running test: keepalive1... NetworkError: write failed (context: remote:prog(../bin/xapian-progsrv -t5000 .chert/db=apitest_simpledata) (Broken pipe) ./apitest backend remoteprog_chert: 224 tests passed, 1 failed, 3 skipped. ./apitest total: 2992 tests passed, 1 failed, 45 skipped. FAIL: apitest --- After filtering the above with: grep "error:" *BUILDING* | grep -v GPG | grep -v "debian\/rules" >& all-failures.txt I had 32 unique failures remaining... --- -Wnarrowing This is a mismatch between signed values and arm64's unsigned char. This hits 21 packages. A typical failure looks like: s3m.cpp:29:90: error: narrowing conversion of '-1' from 'int' to 'char' inside { } [-Wnarrowing] {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1}; ^ The package builds broken by this warning promoted to an error are: adplug_2.2.1+dfsg3-0.2ubuntu2 alsa-tools_1.0.29-1ubuntu1 biosig4c++_1.3.0-2.1build1 calligra_1 edtsurf_0.2009-3 garmindev_0.3.4+svn3432-3 kelbt_0.15-1 ksirk_4 lrzip_0.621-1 mimetic_0.9.8-2.1 nootka_1.2.0-0ubuntu3 opencollada_0.1.0~20140703.ddf8f47+dfsg1-2 psi_0.15-2build1 psi-plus_0.16.330-1build2 qlandkartegt_1.8.1+ds-3build1 qpxtool_0.7.2-4 ruby-unf-ext_0.0.7.1-1build1 sidplay-libs_2.1.1-14ubuntu2 tennix_1.1-3 ufraw_0.20-3build1 xmlrpc-c_1.33.14-0.2ubuntu3 --- After filtering the above, the following packages remain: ecere-sdk_0.44.11-0ubuntu2 [ Invalid code, __nothrow__ and __leaf__ should have a comma between them. I can't see how this code is generated to validate the failure by inspection ] obj/release.linux/Archive.c:327:93: error: expected ')' before '__leaf__' extern unsigned int gnu_dev_major(unsigned long long int __dev) __attribute__((__nothrow__ __leaf__)) __attribute__((__const__)); ^~~~~~~~ eclipse-pydev_3.9.2-4 [ Invalid code (as far as I know my c++11...) using both auto and a type name won't work. Presumably worked before as a redundant storage duration specifier but is broken now we are C++14 by default. ] plugins/org.python.pydev/pysrc/pydevd_attach_to_process/linux/attach_linux.c: In function 'int _PYDEVD_ExecWithGILSetSysStrace(bool, bool)': plugins/org.python.pydev/pysrc/pydevd_attach_to_process/linux/attach_linux.c:237:25: error: expected initializer before 'pydevdTracingMod' auto PyObjectHolder pydevdTracingMod = PyObjectHolder(isDebug, pyImportModFunc("pydevd_tracing")); ^~~~~~~~~~~~~~~~ eigen2_2.0.17-1ubuntu1 [ Warning looks correct to me, function is declared: void AmbiVector<Scalar>::nonZeros() const ] In file included from /«PKGBUILDDIR»/Eigen/Sparse:88:0, from /«PKGBUILDDIR»/test/sparse.h:43, from /«PKGBUILDDIR»/test/sparse_basic.cpp:25: /«PKGBUILDDIR»/Eigen/src/Sparse/AmbiVector.h: In member function 'void Eigen::AmbiVector<_Scalar>::nonZeros() const': /«PKGBUILDDIR»/Eigen/src/Sparse/AmbiVector.h:139:12: error: return-statement with a value, in function returning 'void' [-fpermissive] return m_llSize; ^~~~~~~~ foo-yc20_1.3.0-6build1 [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69176 ] haskell-src-exts_1.16.0.1-3build4 [ Environment?? ] gcc: internal compiler error: Killed (program cc1) Please submit a full bug report, with preprocessed source if appropriate. netpbm-free_2:10.0-15.2 [ ICE (not sure if this has been reported and fixed, I see similar bugs, but maybe not this one? I can't reproduce it with trunk. ] /«PKGBUILDDIR»/pnm/tifftopnm.c:677:1: internal compiler error: Segmentation fault main(int argc, char * argv[]) { ^~~~ 0x9613ff crash_signal ../../src/gcc/toplev.c:334 0xa6ec04 get_expr_operands ../../src/gcc/tree-ssa-operands.c:714 0xa6f4c7 parse_ssa_operands ../../src/gcc/tree-ssa-operands.c:931 0xa70a53 build_ssa_operands ../../src/gcc/tree-ssa-operands.c:946 0xa70a53 update_stmt_operands(function*, gimple*) ../../src/gcc/tree-ssa-operands.c:1080 { .... etc } qutecom_2.2.1+dfsg1-5.2ubuntu2 [ No idea why this should start failing now. Possibly not C++11 clean? ] /usr/include/boost/bind/bind.hpp:392:35: error: no match for call to '(boost::_mfi::mf2<void, UserProfile, SipAccount&, EnumSipLoginState::SipLoginState>) (UserProfile*&, const SipAccount&, const EnumSipLoginState::SipLoginState&)' unwrapper<F>::unwrap(f, 0)(a[base_type::a1_], a[base_type::a2_], a[base_type::a3_]); ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ruby-mysql2_0.3.16-2ubuntu1 [ Test failure - probably environment] /usr/bin/mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/tmp/tmp.d6LMsrf2cD/mysql.sock' (2)' sitplus_1.0.3-4.1build1 [ Uses boost::shared_ptr and the std:: namespace, gets in to trouble now that C++11 provides a std::shared_ptr ] In file included from /«PKGBUILDDIR»/src/mod_collage/Kernel/kernel.cpp:36:0: /«PKGBUILDDIR»/src/mod_collage/Kernel/delay.h:27:4: error: reference to 'shared_ptr' is ambiguous shared_ptr<PictureNode> m_img; stardict_3.0.1-9.2ubuntu3 [ No idea why this would start to fail now. Possibly not C++11 clean? ] stardict.cpp: In member function 'bool AppCore::SimpleLookupToFloat(const char*, bool)': stardict.cpp:656:100: error: no matching function for call to 'AppCore::BuildResultData(std::vector<InstantDictIndex>&, char*&, CurrentIndex*&, bool, size_t&, gchar***&, gchar****&, bool&, int)' BuildResultData(scan_dictmask, SearchWord, iIndex, false, iLib, pppWord, ppppWordData, bFound, 2); ^ vlc_2.2.1-5 [ Includes an atomic header from QtCore that seems to get in a lot of trouble. Many errors, more than are worth reproducing here. ]