From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id +E4FE3X1oGNSOgEAbAwnHQ (envelope-from ) for ; Tue, 20 Dec 2022 00:36:21 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id kI8EE3X1oGP1DgEAauVa8A (envelope-from ) for ; Tue, 20 Dec 2022 00:36:21 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id DFB9A3206A for ; Tue, 20 Dec 2022 00:36:20 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p7Pg3-0005EP-6O; Mon, 19 Dec 2022 18:36:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p7Pfu-0005CB-Sl for bug-guix@gnu.org; Mon, 19 Dec 2022 18:36:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1p7Pfu-00012S-As for bug-guix@gnu.org; Mon, 19 Dec 2022 18:36:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1p7Pft-0000Sk-RL for bug-guix@gnu.org; Mon, 19 Dec 2022 18:36:01 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#60200: Incompatibilities between gcc-toolchain and R packages Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 19 Dec 2022 23:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60200 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Lars-Dominik Braun , 60200@debbugs.gnu.org Received: via spool by 60200-submit@debbugs.gnu.org id=B60200.16714929041762 (code B ref 60200); Mon, 19 Dec 2022 23:36:01 +0000 Received: (at 60200) by debbugs.gnu.org; 19 Dec 2022 23:35:04 +0000 Received: from localhost ([127.0.0.1]:41037 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7Pex-0000SM-LI for submit@debbugs.gnu.org; Mon, 19 Dec 2022 18:35:04 -0500 Received: from mail-wm1-f42.google.com ([209.85.128.42]:37731) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p7Peu-0000Ru-1T for 60200@debbugs.gnu.org; Mon, 19 Dec 2022 18:35:02 -0500 Received: by mail-wm1-f42.google.com with SMTP id r67-20020a1c4446000000b003d35acb0f9fso590244wma.2 for <60200@debbugs.gnu.org>; Mon, 19 Dec 2022 15:34:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=SdWxe5g7oJNyRaUIbC+W9p2+2DkaJmv92aERKuUSXYI=; b=E6rCe6zB4vKPwU859ZJG4fdiJCuHlA44XvOFou/F7V9IIigYWla6xWf5w7mll3pGkh tYcAieRUeyUCt/zPsRs2P+WNLtkrYGrmiEnrJmuz2LPxrufByVB+SCMeFUn6/lVUOIGE 3fZwt6y9hFnQKmoFyxejF668iUi/z/xMfwzMQB/1rAhgEeJ+EhPHOzkzWIRrgVzFp6tE OrmMbsEtxarlZt2pmL3oKct4ToUehvOqiwKD2cU37w+OEQ5PzdEMtr5VaKnz7QidsAx4 R0M9F8fEgoBj6lNGLjEljTRZP2dowi2CDJhx7hN0HUNKGxcguumZfEiZ0MZVRyZuCSNI Jhow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:references :in-reply-to:subject:to:from:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=SdWxe5g7oJNyRaUIbC+W9p2+2DkaJmv92aERKuUSXYI=; b=uu9XPkGSKKLmacZLELUt9gCJnn1ttHakoF91hWDgbzWW3N7W9l3A59jOE++q+SeK1z b+jj3t7MC+yuO6h5vWoBwc/zgWWbsXr7EGL+wsMem7AvF451JudiIru/3zRf/QzFZvMH ZZo+2bnEboPG2bzAq6Uh8odupajnKUR1C91iDuPXW++fzMLZMCyL+YwTfnPbffYdwtfB bAcrjGKcBqVqhz6q7PMFVYusQkFYlMftDXuZh0jyWM7pKtQ0eRQUdlynqdwobtP73pkP 9Mwk0mVZV8VVYHlBw4gd06jbb/Vl9maxAlBiaEbnG3BUQ6P3MvkdMMdmlQcaMRe2+WXK yAcw== X-Gm-Message-State: ANoB5pm05h9lJ8Lok/pfD+CTDTL3tukkXLcyE1uW0Wkn2W0Pnub2Zh18 WTVHbhh/ueCjcELsqdjxLrVimAkzRK0= X-Google-Smtp-Source: AA0mqf5YO39Bwy0apw7R3BVxc1teq94ijQp/+St84CL6C+z2DHDIlBcplgvBvMzCslvP+RdGd/9DXw== X-Received: by 2002:a05:600c:540c:b0:3cf:e850:4444 with SMTP id he12-20020a05600c540c00b003cfe8504444mr8017000wmb.1.1671492894056; Mon, 19 Dec 2022 15:34:54 -0800 (PST) Received: from lili ([2a01:e0a:59b:9120:65d2:2476:f637:db1e]) by smtp.gmail.com with ESMTPSA id x33-20020a05600c18a100b003d1cc0464a2sm13200949wmp.8.2022.12.19.15.34.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Dec 2022 15:34:53 -0800 (PST) From: zimoun In-Reply-To: References: Date: Tue, 20 Dec 2022 00:32:26 +0100 Message-ID: <86wn6nynp1.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: bug-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=E6rCe6zB; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1671492981; a=rsa-sha256; cv=none; b=HxTK5p9lN7y8Bg5NpZYjq04uu1FdzMHO73wipCeoODqkY2fL0xN6OujvHTwzZukbdbl17R EYUN5Eo80wtDVvmV8Lx/bhbdC6tnsXk9SQY+qvQ//YZdxz+S5L/s83+QnYeUfwsYoWlSBQ s9RDZPfCDcbwAAbZRYRgaEkrVunpOmxougwPpAKx4ZArOZYB9vz+AAQ+XtZpUMP6EbFtkv WTp7yZREi7dMKt8ALMlo8Fn7cgzKZo01gqe1yCjQ/t4bOgPCTAmeJD6l+1OltxO9/xbgMR 86wMReZj78yf+dn75zS3hk4ULsnw7kVVX8D3LbF2CIQdqiKmERV5k4GbxGVSPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1671492981; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=SdWxe5g7oJNyRaUIbC+W9p2+2DkaJmv92aERKuUSXYI=; b=uSs8Y73u4ox29TtPQP0sW2GWZpDH51kEVhJhnQdzB9ezaKC7ahet13AikcCXan0xRoU3Bd 6Pc52NY7t0CJRHObcH8kuKSUhNkku8/cmv+iWqlgFNN740MnkR+pUIlmLyQkWtzUuUAyF6 x+671Bqk/AFF5oEOm8amJk1DrT5QGNtgIgxzwhrFDRH4iIM4hc5XXvR2wmBH+daHNAP22T wACXzkTSPEmIJi7dl/K63D3VYTIxsW807njEAqyTFm3Dr/ko8sbe0qvRrvcIY85XWBu4f7 wO1bbimQoU4/0WEiu8pWpJ27Ob0SWwgGNUzNDMe2+weBYjDaPGC+Q+y6C4wZkA== Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=E6rCe6zB; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "bug-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="bug-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Scanner: scn1.migadu.com X-Migadu-Spam-Score: -1.89 X-Spam-Score: -1.89 X-Migadu-Queue-Id: DFB9A3206A X-TUID: XME1fay0s6cZ Hi Lars, On Mon, 19 Dec 2022 at 13:00, Lars-Dominik Braun wrote: > $ guix shell r-brms r make sed gcc-toolchain bash -C --no-cwd --share= =3D/tmp > $ R > > library(brms) > > fit1 <- brm(count ~ zAge + zBase * Trt + (1|patient), data =3D epileps= y, family =3D poisson()) > Compiling Stan program... > Error in dyn.load(libLFile) : > unable to load shared object '/tmp/RtmpKqzbYg/file3245e787c.so': > /gnu/store/vqhamsanmlm8v6f90a635zc6gmhwlphp-gfortran-10.3.0-lib/lib/li= bstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /tmp/RtmpKqzb= Yg/file3245e787c.so) > Error in sink(type =3D "output") : invalid connection > > The same code works well with gcc-toolchain@10 instead of gcc-toolchain > (@12, which is the default). As we can see the generated shared library > above depends on GCC 12, 10 and GFortran 10 at the same time: [...] > Possible solutions: > > - Make gcc-toolchain@10 the default and rename gcc-toolchain@12 to > gcc-toolchain-next@12, like we do for Haskell and (sometimes) Python. > - Update, both, the default GCC and GFortran to version 12. > - Explicitly depend on the correct gcc-toolchain in packages that need > a compiler. It depends on what you are naming default. :-) The default GCC toolchain for compiling is provided by the package gcc-toolchain@10. Without any specification about the version, if a package name is defined at several versions, then the command-line uses the higher version of this package. To avoid the kind of confusing error as you are observing, usually, the suffix =E2=80=99-next=E2=80=99 is applied to th= e package name for higher versions. For instance, python-numpy-next. To add a data point to the confusion, consider the package =E2=80=99gcc=E2= =80=99 instead of =E2=80=99gcc-toolchain=E2=80=99. As noticed earlier [1], there is a bug= . Consider: --8<---------------cut here---------------start------------->8--- $ guix show gcc@6 guix show: error: gcc@6: package not found $ guix show gcc@7 name: gcc version: 7.5.0 outputs: + lib: shared libraries + debug: debug information + out: everything else systems: x86_64-linux i686-linux dependencies: gmp@6.2.1 isl@0.23 libelf@0.8.13 libstdc++-headers@10.3.0 mpc= @1.2.1 mpfr@4.1.0 perl@5.34.0 texinfo@6.7 zlib@1.2.11 location: gnu/packages/gcc.scm:601:2 homepage: https://gcc.gnu.org/ license: GPL 3+ synopsis: GNU Compiler Collection=20=20 description: GCC is the GNU Compiler Collection. It provides compiler fron= t-ends for several languages, including C, C++, Objective-C, Fortran, Ada, = and + Go. It also includes runtime support libraries for these languages. --8<---------------cut here---------------end--------------->8--- It is because the =E2=80=99properties=E2=80=99 field of gcc@7 is rewritten, --8<---------------cut here---------------start------------->8--- (define-public gcc-7 (package (inherit gcc-6) (version "7.5.0") [...] (properties `((compiler-cpu-architectures ("aarch64" ,@%gcc-7.5-aarch64-micro-architectures) ("armhf" ,@%gcc-7.5-armhf-micro-architectures) ("x86_64" ,@%gcc-7.5-x86_64-micro-architectures)))))) --8<---------------cut here---------------end--------------->8--- and thus, it looses =E2=80=99hidden=E2=80=99, as shown here: --8<---------------cut here---------------start------------->8--- $ guix repl GNU Guile 3.0.8 Copyright (C) 1995-2021 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guix-user)> ,use(gnu packages gcc) scheme@(guix-user)> (package-properties gcc-6) $1 =3D ((hidden? . #t) (gcc-libc . #f)) scheme@(guix-user)> (package-properties gcc-7) $2 =3D ((compiler-cpu-architectures ("aarch64" "armv8-a" "armv8.1-a" "armv8= .2-a" "armv8.3-a") ("armhf" "armv7" "armv7-a" "armv7-m" "armv7-r" "armv7e-m= " "armv7ve" "armv8-a" "armv8-a+crc" "armv8.1-a" "armv8.1-a+crc" "armv8-m.ba= se" "armv8-m.main" "armv8-m.main+dsp" "iwmmxt" "iwmmxt2") ("x86_64" "core2" "ne= halem" "westmere" "sandybridge" "ivybridge" "haswell" "broadwell" "skylake"= "bonnell" "silvermont" "knl" "skylake-avx512" "k8" "k8-sse3" "barcelona" "= bdver1" "bdver2" "bdver3" "bdver4" "znver1" "btver1" "btver2" "geode"))) scheme@(guix-user)> --8<---------------cut here---------------end--------------->8--- Because the intent of, --8<---------------cut here---------------start------------->8--- (define-public gcc-toolchain-aka-gcc ;; It's natural for users to try "guix install gcc". This package ;; automatically "redirects" them to 'gcc-toolchain'. (deprecated-package "gcc" gcc-toolchain-10)) --8<---------------cut here---------------end--------------->8--- is to return the default GCC toolchain when typing =E2=80=99gcc=E2=80=99 at= the command line. And error for any other version than @10. 1: Update the default GCC toolchain from 10 to 12 is a core-updates change and a (almost) full world rebuild. When the issue you are describing is an issue about an inconsistency with the command-line. >From my point of view, an option would to rename the packages gcc-toolchain@11 and gcc-toolchain@12 as gcc-toolchain-next@11 and gcc-toolchain-next@12. Which would be consistent with the rest. And also fix the bug with the package =E2=80=99gcc=E2=80=99. :-) Cheers, simon