From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id EMFoG1VvfWc6UgEAe85BDQ:P1 (envelope-from ) for ; Tue, 07 Jan 2025 18:15:49 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id EMFoG1VvfWc6UgEAe85BDQ (envelope-from ) for ; Tue, 07 Jan 2025 19:15:49 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b=m2xxlG1x; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=posteo.net ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1736273749; 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: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=ZcW41uMpgyLBY//3/K04Wl3DK2HJ1R+Yw58BP+/pcOI=; b=N81kYc0JtUtJSiwfJ6OhdASYIpviDAszBrydvBsFK06t0h9ztQnSDGsizQLik4C+N4hSEx 3wvtRkBleU04OaA6P4SXluLz5XRR/oXvS+7oWinxe7PccYzaSniMLJZJgG0iwKw1YMIMeO X664jm532fxJih7X7+iYyzj3Jh3JUGWuFN8qfDRLIgiupCGaKIAb3HWt+/1/y/bUEO7Qar V+zvTE+znraKJl/BAbqcoByXPJQZ0MCOaGp1Y/yd2mT7fGpsr5aeMcsMZIbizoDko5e/CB R156XkPYyRYW0Wd7wOK0jbfTPQnjIOOIfteUv0lYMgyCs973JchlthnN8Bghsg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=posteo.net header.s=2017 header.b=m2xxlG1x; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=posteo.net ARC-Seal: i=1; s=key1; d=yhetil.org; t=1736273749; a=rsa-sha256; cv=none; b=OF0eG4KIRRbnsC89GoEGSR1M/CjrH4FVAtCH5EJ8Zgx39OwhQv1tzviZ77ZFfKe7Tsb+cA S99xEuWIF8zKmjgauyolTWcxR8e2oMQSiYmTIgm6twRcvnPHzbtcJP51PR8jbyECOlqyco 6WGyEeMoT8sFm2UfrI8DootvzCJ0zbVrS9Bxe+uBmvLpKgumpqskeivmpw4E7LxI3CO+kY OYNfxDI8e5M+pQh5LKz/Id2AShcW0j9whiojs/zEnXJksckeG/h79OJdts8JGkuYnGMymU F0kJbbKzh0hJ+ZSI7w4MGPmMqzQA8l1pSbJeVC+CAtPIyMN0M7ep2SQo3ckDsg== 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 EABE99F242 for ; Tue, 07 Jan 2025 19:15:48 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tVE6W-0006yr-KH; Tue, 07 Jan 2025 13:15:00 -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 1tVE6U-0006yU-92 for help-guix@gnu.org; Tue, 07 Jan 2025 13:14:58 -0500 Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tVE6S-0007th-7m for help-guix@gnu.org; Tue, 07 Jan 2025 13:14:58 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 1B167240101 for ; Tue, 7 Jan 2025 19:14:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1736273692; bh=AswqYHbSa1u6wYARgD/D5m6V5hVp0L1DkiLajhliyQ0=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type: Content-Transfer-Encoding:From; b=m2xxlG1xu6pRiYqb/YIRbPj72Xph4P/kWYCnXjVXZ+7FBCcyNAmnIdPCsmkeA+2ZC JWX4JVhsUDZU2Pt7uMfUb+16/M8zCZ2oAJG4srkNHu+4T/oezI4znbUm0y4JoMMRNe M1aiL9Q1mxHQRKGatWO/O0ek4EV+vVeuGSbGcIGj7BguECV0Ytevp3UYrggdIUG5ad K9vNJSZnPOWOb1zGm+Ds+Zz9mw8Yrg1skvOdSpl6JvM19RYdH4bnofK+bsAF/C5lwQ nIGj47W51+7aNfud78VK2lgyoqEFCgrSneMvV2ALHlMlU0c8+mdoOBuXYu0dL0rla8 XYzOJqk1NESqA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4YSK2f4DYPz9rxG; Tue, 7 Jan 2025 19:14:50 +0100 (CET) From: Fredrik Salomonsson To: Daniel Hatton , Guix help list Subject: Re: Choosing C++ library versions in Guix In-Reply-To: References: Date: Tue, 07 Jan 2025 18:14:48 +0000 Message-ID: <87o70io5if.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=185.67.36.66; envelope-from=plattfot@posteo.net; helo=mout02.posteo.de X-Spam_score_int: -43 X-Spam_score: -4.4 X-Spam_bar: ---- X-Spam_report: (-4.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -8.56 X-Spam-Score: -8.56 X-Migadu-Queue-Id: EABE99F242 X-Migadu-Scanner: mx10.migadu.com X-TUID: azMzTZ+MMDIL Hi Daniel, Daniel Hatton writes: > On my Guix system, I'm trying to install an Octave package (struct)=20 > using Octave's internal "pkg install" tool (since the conclusion from=20 > thread=20 > =20 > seems to be that the Octave packages I want are not available in the=20 > Guix repositories). > > The process fails with the error message > > /gnu/store/zzpbp6rr43smwxzvzd4qd317z5j7qblj-gcc-11.4.0-lib/lib/libstdc++.= so.6:=20 > version `GLIBCXX_3.4.32' not found (required by=20 > /home/dan/.local/share/octave/api-v59/packages/struct-1.0.18/x86_64-unkno= wn-linux-gnu-api-v59/cell2fields.oct). > > I think the fundamental problem is that the process shouldn't be=20 > pointing to gcc/glibc 11.4.0, because the only libstdc++.so.6 I have=20 > anywhere under $(HOME)/.guix-profile is more recent (14.2.0). But then,= =20 > I wasn't expecting the process to be trying to compile any C++ code at=20 > all, so what do I know? Any ideas how to sort this, please? I haven't used Octave so my understand on how it works could be off. I did a quick look at its source =E2=80=94 using guix build -S octave =E2=80= =94 to see what it was written in, and at least some parts are C++. I didn't verify but is most likely using dlopen to load those extra packages. Given that assumption, what is happening is that octave is linked against that gcc-11 libstdc++ you see in the error message. Guix build system also rpath the path to that library to make sure it is used at runtime. Which means that when you start octave that is the libstdc++ the runtime linker is going to use. And then I think what happened was that when you did `pkg install` it just picked up the gcc you had in your profile, which is 14.2.0. That libstdc++ contains newer versions of some of the symbols =E2=80=94 with the version GLIBCXX_3.4.3. When then Octave tries to load that package it will fail since it already has libstdc++ loaded from gcc-11 and therefore will not look for the one from gcc-14. To solve this you need to match the gcc-toolchain or make sure the gcc version used to build Octave is newer than the one you use to build the Octave package. I don't see the octave package definition in guix pinning to any particular gcc version. So just updating/reconfiguring your profile =E2=80= =94 depending on how you have set it up =E2=80=94 might work. If not you can s= ee if picking a matching gcc-toolchain works when building the Octave package: Using something like this: ``` guix shell gcc-toolchain@11 -- pkg install ... ``` I hope that helps. --=20 s/Fred[re]+i[ck]+/Fredrik/g