From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Sun, 26 Apr 2026 13:35:33 +0300 From: Gleb Fotengauer-Malinovskiy To: ALT Linux Team development discussions Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Subject: [devel] I: gcc 15.2.1 && binutils 2.46 X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Apr 2026 10:35:56 -0000 Archived-At: List-Archive: List-Post: Hi, Как многие уже заметили, несколько дней назад в Сизифе появились новые gcc 15.2.1 и binutils 2.46. https://gcc.gnu.org/gcc-15/changes.html https://gcc.gnu.org/gcc-15/porting_to.html Главное изменение это переключение стандарта C по умолчанию (-std=gnu17 -> -std=gnu23) в gcc, что значит, что огромное количество старого кода компилятор отказывается собирать. Если апстрим ещё не исправил ваш пакет, то явное указание -std=gnu17 это достаточно нормальный фикс. Пакеты, сборка которых сломалась: CBFlib mike @everybody FlightGear protvin silverducks @everybody MUMPS george @everybody RasMol mike @qa SimplePAMApps @core a2ps esgor @everybody abook mike @qa adanaxisgpl viy @everybody adjtimex @core allin1 @nobody alltray alton @everybody alock @nobody amp medovi @everybody anacron @core legion arc viy @everybody atsar_linux @nobody audio-recorder neurofreak @everybody autocutsel @nobody avr-gdb viy @everybody blue-recorder lola rider @everybody bluez-alsa lakostis @everybody bomberclone grenka brcm-patchram-plus nenderus @everybody bristol iv @everybody bugstalker writers @everybody bvi saahriktu @everybody byaccj alton @everybody c-icap cas boyarsh @everybody cadaver naf @everybody cardpeek nickel @everybody ccnet lav cellwriter mike @qa @everybody cgit dutyrok cgoban manowar @qa @everybody chaco grenka chkrootkit cas @everybody clean vkni @everybody clines george @qa clsync bircoph mike @everybody compiz shrek connman shaba manowar mike @everybody cpio @core cutmp3 alton @everybody cvs ldv @qa cyrus-imapd asy admsasha @everybody daemontools-encore manowar @everybody dc3dd viy @everybody denemo majioa dethrace arbars @everybody dhrystone mike @qa dia lav shrek @qa @everybody dia2code george @everybody directfb mike @everybody dnsflood @nobody dopewars viy @everybody dsniff george @everybody dtach oddity dxf2fig viy @everybody ed @core eflite @nobody emelfm2 crux @everybody enlightenment-module-desksanity @nobody enscript grenka evhz lav @everybody evince shrek sin @gnome @qa exifprobe @nobody ff-clone george @everybody flow-tools-ng @nobody fossology-nomos vt ftimes @nobody ftpproxy naf gbdfed aris @everybody gcal viy @everybody gdbm @core gem-jsminc majioa @ruby @everybody gem-libxml-ruby majioa @ruby @everybody gem-mmap2 majioa @everybody geomview oddity @qa @everybody gerbv lav @qa @everybody getfemxx zerg grenka @everybody gfloatbg @gnome @everybody ggz-gtk-games lvol @everybody gkrellm-bluez @nobody gkrellm-launch @nobody gkrellm-volume @nobody global lav @qa glusterfs10 lav @everybody gmtp jinn @everybody gnokii rider @everybody gnujump viy @everybody gnustep-GSPdf cas @everybody gnustep-NeXTGo cas @everybody gnustep-back cas @everybody gnustep-base cas @everybody gprolog ldv @everybody greed george @qa gretl lav @everybody gtkam jinn @everybody gtkwave cronbuild gummi arei @everybody hdapsd @nobody hercules nbr @everybody heroes-sdl iv @everybody histring ildar @everybody httperf naf @everybody hydra oddity icoutils oddity @everybody iftop mike @qa igmpproxy @nobody ink oddity @everybody ipcad @nobody ipxe shaba kbdd rider @everybody larswm viy @everybody lash viy @everybody libbonobo @gnome libcogl shaba aris libdb5.3 rider protvin @everybody libeditline boria138 @everybody libgeotiff dd @everybody libgnomeui @gnome libhbaapi viy @everybody libident viy @everybody libiodbc ulysses @everybody libkarma viy @everybody libmcrypt lav @qa @everybody libmed cas @everybody libmeschach majioa libmesode george @everybody libmhash viy @everybody libmp3splt rider @everybody libnids @core libnjb viy @everybody liboldx viy @everybody libowfat rider @everybody libpari23 lav @everybody libpolyxmass viy @everybody libpst nbr mike azol grenka @qa @everybody librep dd manowar @qa @everybody libretro-computers arbars @everybody libretro-handhelds arbars @everybody librpc2 viy @everybody librtas shrek @everybody libscs viy @everybody libsmi shaba @everybody libstrophe george @everybody libv sin @everybody libxtrap viy @everybody libzbxmodbus evg @everybody liquidwar6 george @everybody lsof george ldv ltp vt lua5.1-module-luaossl dutyrok lua5.3-module-luaossl dutyrok lua5.4-module-luaossl dutyrok lzdoom arbars @everybody mailutils asy @python @everybody malaga viy @everybody man-db legion @core iv mathomatic george @qa mcabber gns @everybody mcl kirill @everybody megapixels cas x1z53 @everybody meritous george @qa mimetex rider @everybody minipro voropaevdmtr @everybody mirrormagic viy @everybody modbus-utils sav @everybody monetdb enp @everybody mosml vkni @everybody mozilla-plugin-mozplugger lakostis @everybody mp3splt-gtk aris mpage grenka mt-st grenka mtpfs shaba @everybody mupen64plus oddity @everybody mxk @nobody mytetra majioa nas nenderus @everybody ncdc akv @everybody ncompress @core nethack george @qa netperf vt netpolice-filter cas @everybody newlisp oddity @qa nfft mike @everybody ngrep @core ninvaders viy @everybody nip2 mike rom_as @qa @everybody normalize lav @qa @everybody nuclearchess drool @everybody nvdock lakostis @everybody openmotif serjigva @everybody opensc-compat grenka opentoonz rider @everybody osmo aris papi vt parcellite shrek passivedns rider @everybody password-checker alxvmr @everybody pcp snowmix grenka @everybody pcsxr nenderus @everybody perl viy at crux perl-CommonMark aas ded @everybody perl-Convert-UUlib shaba @cpan @qa perl-Coro viy @everybody perl-DBD-Pg @cpan @qa perl-Gtk2 crux @cpan @everybody perl-Math-Pari lav @qa @cpan perl-Newt @cpan @everybody perl-SDL viy @everybody perl-Term-ReadLine-Gnu at @cpan @everybody perl-YAML-Syck viy @cpan perl-tk majioa pg_top @nobody phlipple george @everybody picoc lav @everybody pktriggercord grenka pktstat @nobody policyd naf @qa poppassd @nobody ppmtocpva mcpain @everybody ppp mike @everybody qplay grenka quagga asy rider racket-core ancieg raze arbars @everybody refal5 majioa @everybody rogue george @qa @everybody runit manowar @everybody scanssh @core scotch grenka screen george @everybody sdlscav lav @everybody secure_delete naf sendmail asy @everybody shippy viy @everybody siege lav @everybody slapi-nis slev slsnif @nobody snort oddity @qa @everybody spacefm jinn @everybody spai grenka majioa splint @core @qa @everybody splitvt nbr @qa sqliteodbc george @everybody startdde lvol @everybody stylewriter mcpain @everybody sylpheed oddity @everybody t1lib mike @qa @everybody tcl-blt slazav @everybody tcl-memchan vseleznv @everybody tcl-snack lav @everybody tclock george @qa teg viy @everybody tetrix george @everybody texlive viy @everybody tgcd zerospirit @everybody thoth minergenon @everybody timeoutd manowar @everybody tinyfugue vkni @everybody tome @nobody trayer @nobody tree vt ttyrec george @everybody tuxracer cas @everybody twofing @nobody ucview oddity @everybody ufraw aris uget oddity @everybody unarj mike @everybody units @core @qa unrtf oddity @everybody unzip arei @everybody vde2 arbars @everybody vector nicourced @everybody volleyball george @qa vqcc-gtk @nobody w3m eugvv admsasha @qa @everybody wavsplit @nobody wdiff george @everybody wmCalClock grenka wmMoonClock pav @everybody wmWeather mike @qa @everybody wmappl @nobody wmdocker lav @everybody wmforkplop mike @qa @everybody wmhdplop mike @qa @everybody wmxkbru @nobody woadaptor baywind @everybody wol ulysses @everybody worminator viy @everybody xfig slazav @qa xfractint george @everybody xfstests vt xinetd @core xmbdfed george @everybody xmedcon rider @everybody xrandr-align manowar @everybody xrcode rider @everybody xsane lav @everybody xse george @everybody xtail vt xvidcap mike @everybody ytalk rider @everybody ziproxy cas @everybody zuo ancieg fetchmail legion mike azol @qa @everybody https://gitlab.com/fetchmail/fetchmail/-/commit/32594c241f983926b8789acee91cdadbc63f105e.patch pd viy @everybody https://github.com/pure-data/pure-data/commit/95e4105bc1044cbbcbbbcc369480a77c298d7475 plugdata neff @everybody https://github.com/pure-data/pure-data/commit/95e4105bc1044cbbcbbbcc369480a77c298d7475 /usr/src/RPM/BUILD/FlightGear-2024.1.1/3rdparty/iaxclient/lib/audio_openal.c:262:5: error: conflicting types for 'openal_initialize'; have 'int(struct iaxc_audio_driver *, int)' /usr/src/RPM/BUILD/FlightGear-2024.1.1/3rdparty/iaxclient/lib/audio_openal.h:4:5: note: previous declaration of 'openal_initialize' with type 'int(void)' The meaning of function declarations of the form rettype identifier (); such as char *strstr (); changed in C23. In C17 and earlier, such function declarators specified no information about the number or types of the parameters of the function (C17 6.7.6.3), requiring users to know the correct number of arguments, with each passed argument going through default argument promotion. In C23 such declarations mean (void) i.e. a function taking no arguments, which can lead to build failures on code that relied on the earlier meaning. Xbae serjigva @everybody abcm2ps george @everybody alleyoop viy @everybody altsp-test-progs nbr @everybody apache-commons-daemon cas @everybody barnyard2 serjigva @everybody bolzplatz2006 viy @everybody chocolate-doom arbars @everybody cilk rider @everybody dd2 viy @everybody dfu-programmer week @everybody drv_z42 mcpain @everybody e2fsprogs glebfm ldv easytag aris ecl cas @everybody efitools vt efl aris eppic vt f2fs-tools led @everybody ftp naf geany-plugins aris @everybody gentoo oddity @qa giftrans @core @qa gliv lakostis @everybody glpk viy @everybody glpk36 grenka gnupg2 legion manowar gputils lav @qa @everybody hexen2 george @everybody hypre sin @python @qa @everybody insserv cas @everybody iscan-free lav @qa @everybody java-1.8.0-openjdk cas mike @everybody jwasm george @everybody lesstif sin snejok @qa @everybody libXt shrek libdbus-glib shrek libgpg-error legion manowar liblwp viy @everybody libshape lav admsasha @everybody libtsk19 lav @everybody libwlocate viy @everybody libxvid shrek lkrg kotopesutility vt @everybody milter-greylist lakostis @everybody mtx antohami @everybody mumble arseny taf @everybody neko lav @everybody netpbm crux lakostis @everybody nexuiz oddity lakostis @qa @everybody nrg4iso rider @everybody nss-ldapd cas boyarsh @everybody nuclearchess drool @everybody opendkim lav @everybody opendmarc cas @everybody opendune arbars @everybody pcc oddity @qa @everybody perl-Bit-Vector @cpan @qa perl-Date-Calc-XS @cpan @qa perl-Date-Pcalc @cpan @qa picat vkni @everybody plotutils lav @qa pnetcdf rider @everybody pnm2ppa mcpain @everybody popa3d ldv @norebuild postfix glebfm pound asy @everybody prboom-plus grenka psqlodbc mike @everybody python imz george cow glebfm python-module-egenix-mx-base @python quake3 rider protvin @everybody rott george @qa rpcemu arbars @everybody rssh lav shaba @qa @everybody sendip @nobody sharutils egori @everybody shntool rider @everybody sleuthkit lav @qa @everybody speyes alton @everybody srb2 arbars @everybody srb2kart arbars @everybody t4k_common ulysses grenka @everybody tcl-readline vseleznv tcl-tdom vseleznv tvheadend arbars @everybody unadf george @qa @everybody unifdef lav @everybody uvncrepeater-ac zacat @everybody vi-traditional george @everybody vice mike @qa @everybody weechat legion grenka @everybody wmeyes @nobody wmix mike @qa wrath arbars @everybody x125 mcpain @everybody xmlrpc-c shaba @everybody xonotic rider @everybody yaz pv @qa @everybody zxtune arbars @everybody partclone klark @everybody https://github.com/Thomas-Tsai/partclone/commit/a2028896f105d7c2fdfa30327e6f9d939fe53712 python3-module-ctypesgen @python @everybody https://github.com/ctypesgen/ctypesgen/pull/225 pattern.c:131:14: error: expected identifier or '(' before 'true' 131 | XmString true, false, begin, centre, end; C23 added various new keywords, including bool, true, false, nullptr, and thread_local. Code that uses these for identifiers will need changing. For example typedef int bool; will fail. cmus evg @everybody @qa /usr/include/mp4v2/platform.h:80:23: error: 'bool' cannot be defined via 'typedef' 80 | typedef unsigned char bool; т.е. та же проблема, но прямо в хедере библиотеки libmp4v2. RMG arbars @everybody any kaa @everybody bazel-for-cilium gamzin @everybody caprice32 arbars @everybody ccache lav @qa @everybody citra nenderus zerg @everybody codelite grenka dqt5-webengine lvol @everybody fcitx5 viy nenderus @everybody fcitx5-anthy viy @everybody fontview lav @everybody geany george gpui sin @everybody herbstluftwm viy @everybody hipify-clang lakostis @everybody libime viy @everybody libjson11 lav @everybody liblmdbxx manowar @everybody libmaplibre-native-qt ved @everybody libmspub shaba @everybody libodfgen shaba @everybody libproj slazav @everybody libtgvoip lav @everybody llvm-rocm lakostis llvm17.0 nenderus grenka @everybody llvm18.1 lakostis grenka @everybody llvm19.1 lakostis iv asheplyakov maconv george @everybody mfgtools zorg @everybody modsecurity naf @qa onnxruntime arseny @everybody opencpn asy @everybody panzerchasm arbars @everybody pdns shaba piastry sin @qa pdns-recursor cas @everybody pingus oddity @qa @everybody qt5-webengine zerg @everybody rustdesk srebrov @everybody snes9x nenderus zerg @everybody sonic-visualiser grenka supermodel arbars @everybody thrift antohami grenka @everybody timewarrior kirill @everybody yaml-cpp0.8 nenderus @everybody /usr/src/RPM/BUILD/RMG-0.6.5/Source/3rdParty/mupen64plus-video-GLideN64/src/GLideNHQ/TxHiResLoader.h:31:9: error: 'uint32_t' does not name a type mangohud nenderus @everybody shadps4 nenderus boria138 rider @everybody src/vul.h:47:19: error: aggregate 'std::ostringstream oss' has incomplete type and cannot be defined The following headers are used less widely within libstdc++ and may need to be included explicitly when compiling with GCC 15: (for int8_t, int32_t etc.) and (for std::int8_t, std::int32_t etc.) (for std::endl, std::flush etc.) (очевидно, sstream тоже) NearTree mike @everybody PsyDoom arbars @everybody blobby viy @everybody ceph shaba maks1ms cmix george @everybody coan viy @everybody eduke32 arbars @everybody epsonscan2 cas @everybody ferrisloki rider mike @everybody geogram majioa ldc rider @everybody libgraphite2 aris libintel-opencl-clang16 lakostis @everybody libretro-bsnes arbars @everybody llvm16.0 lakostis ded lnav mike @everybody matrix-conduit lav @everybody micmac majioa mjpegtools rider @everybody mongo7.0 taf nenderus @everybody poedit aris poisson-recon-ffi majioa polybar ximper mike @everybody praat mike @qa @everybody rocksdb shaba @everybody rocr-runtime lakostis @everybody spirv-llvm16.0-translator lakostis @everybody trophy rider @everybody ./TNear.h:8731:113: error: 'class CNearTree::NearTreeNode' has no member named 'm_pt_Right'; did you mean 'm_ptRight'? [-Wtemplate-body] A new option -Wtemplate-body was added, which can be used to disable diagnosing errors when parsing a template. bcd lakostis fidel @everybody blender egori rider blender5.0 lakostis nvidia-nccl nash @everybody openshadinglanguage rider grenka lakostis @everybody opensubdiv rider fidel openvdb lakostis grenka rider @everybody python3-module-torch-cuda nash @everybody torchvision-cuda nash @everybody whisper-cpp esgor @everybody /usr/include/c++/15/type_traits(555): error: type name is not allowed : public __bool_constant<__is_pointer(_Tp)> Подсистема cuda у нас, очевидно, не готова к новому gcc, вижу что некоторые пакеты уже пересобрали с gcc14, я так понимаю, что это единственный путь с той версией cuda, которая у нас есть. apt @core boyarsh imz ../include/apt-pkg/repository.h:3: error: header guard 'PKGLIB_REPOSITORY_H' followed by '#define' of a different macro [-Werror=header-guard] 3 | #ifndef PKGLIB_REPOSITORY_H ../include/apt-pkg/repository.h:4: note: 'PKBLIB_REPOSITORY_H' is defined here; did you mean 'PKGLIB_REPOSITORY_H'? Опечатка, которую теперь видит компилятор. ash legion @core lockdev at jinn @everybody pax rider @everybody stmpclean ldv @norebuild which george nodes.c:122:1: error: old-style function definition [-Werror=old-style-definition] Warning -Wold-style-definition включается по умолчанию в случае если включён стандарт C23. python3-module-rawpy alexvk grenka rider aris @everybody waylogout snk @qa meson.build:42:6: ERROR: Dependency "openmp" not found, tried system x86_64-alt-linux-g++: fatal error: cannot read spec file ‘libgomp.spec’: No such file or directory Ошибка в том, что пакеты устанавливают libgomp%{gcc_version}-devel вместо мета-пакета libgomp-devel, который всегда совпадает по версии с компилятором. elfutils ldv vt @norebuild honggfuzz vt @everybody libcrypt ldv vt @norebuild mbedtls-compat nenderus @everybody mdadm shaba vitty @everybody passwdqc ldv @norebuild rr vt vdo shaba @everybody ../../backends/i386_regs.c:88:11: error: initializer-string for array of 'char' truncates NUL terminator but destination lacks 'nonstring' attribute (3 chars into 2 available) [-Werror=unterminated-string-initialization] New warning. gnu-efi-3.0.5 lakostis @everybody sbsigntools vt shim nickel mike rider egori @qa --target efi-app-x86_64 fbx64.so fbx64.efi objcopy: fbx64.so: file format not recognized https://github.com/rhboot/shim/commit/c4665d282072df2ed8ab6ae1d5fa0de41e5db02f т.е. всего лишь --target нужно поменять на --output-target . libvarlink sin @everybody 111/326 libvarlink:test-symbols FAIL 0.88s exit status 1 У readelf -s -W --lto-syms поменялся формат вывода, к сожалению с binutils так бывает. clisp oddity sbolshakov @everybody https://gitlab.com/gnu-clisp/clisp/-/commit/dd899c54f551d0fa4bb5418a5048e91aa4e7353c libntlm @core libunistring2 @core @qa __alignof_is_defined и __alignas_is_defined больше нет в C23. deepin-anything lvol nenderus @everybody /usr/src/RPM/BUILD/deepin-anything-7.0.23/src/server/src/core/pinyin_processor.cpp:35:22: error: ‘template class std::__cxx11::wstring_convert’ is deprecated [-Werror=deprecated-declarations] -- glebfm