Results of rebuilding the Debian package base with Clang 10

Sylvester Ledru ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» the result of rebuilding the Debian GNU/Linux package archive using the Clang 10 compiler instead of GCC. Out of 31014 packages, 1400 (4.5%) failed to build, but by applying an additional patch to the Debian toolkit, the number of unbuilt packages was reduced to 1110 (3.6%). For comparison, when building in Clang 8 and 9, the number of packages that could not be built was kept at 4.9%.

The assembly experiment focused on 250 problems caused by a failure due to Errors in Qmake, and 177 problems, Related with the generation of various symbols in libraries. By adding a simple patch to dpkg-gensymbols to treat a symbol comparison error when linking as a warning, and replacing the g++ config files in qmake, it was possible to fix build failures of about 290 packages.

Of the rest problems, leading to build failure in Clang, the most common errors due to missing some header files, type casting, missing space between literal and identifier, linking problems, not returning a value from a non-void function, using ordered comparison of a pointer with null , lack of definitions.

Source: opennet.ru

Add a comment