From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id WPxSNXTXr148KgAA0tVLHw (envelope-from ) for ; Mon, 04 May 2020 08:51:00 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id ELOBM37Xr14aKAAAB5/wlQ (envelope-from ) for ; Mon, 04 May 2020 08:51:10 +0000 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:470:142::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 D2BB5940019 for ; Mon, 4 May 2020 08:51:09 +0000 (UTC) Received: from localhost ([::1]:36404 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jVWog-0000s1-6q for larch@yhetil.org; Mon, 04 May 2020 04:51:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43522) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jVWoX-0000q0-T9 for bug-guix@gnu.org; Mon, 04 May 2020 04:51:01 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:47383) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jVWoX-0003nO-Ka for bug-guix@gnu.org; Mon, 04 May 2020 04:51:01 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jVWoX-0002XQ-JW for bug-guix@gnu.org; Mon, 04 May 2020 04:51:01 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#41038: gcc creates binaries that don't find their shared libraries Resent-From: zimoun Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 04 May 2020 08:51:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41038 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Bruno Haible Received: via spool by 41038-submit@debbugs.gnu.org id=B41038.15885822259713 (code B ref 41038); Mon, 04 May 2020 08:51:01 +0000 Received: (at 41038) by debbugs.gnu.org; 4 May 2020 08:50:25 +0000 Received: from localhost ([127.0.0.1]:58929 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jVWnx-0002Wb-4k for submit@debbugs.gnu.org; Mon, 04 May 2020 04:50:25 -0400 Received: from mail-qv1-f65.google.com ([209.85.219.65]:40479) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jVWnv-0002WM-34 for 41038@debbugs.gnu.org; Mon, 04 May 2020 04:50:23 -0400 Received: by mail-qv1-f65.google.com with SMTP id fb4so7933167qvb.7 for <41038@debbugs.gnu.org>; Mon, 04 May 2020 01:50:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=SpOS3JE2nXttLreJPOOsQ/eSvNfrc2XeczFVL7PxCI4=; b=DBuoCs2sJJtc4bOQl9zUsylMJoZtRA9VBT9QLoyQEbgJe38HTKrwyfvpwtBTQcHeGx WQvJofRBgnE2gKK29hzYPZSPl1+1Bbb258gcvHXkk140e9fpRwBPeoxx6jsCUHKvjSvW OD8nTTg9vic4awIQC5zJVDghxJncFdp9MOtRt28yE4/D6olkM9yM3XdG5WMfOvuyE2FQ N6KSjoJD58l6pgIs3DwknXW99vLcIpvBDiPoiSksY3aXpvg4O8KxPzLiU28HSs1IwAI6 X1FfT4I/Z4J+2iQ2ILDF2golIdmagTGIzPp393asEo2PLrgy5EvJBVyY/wR8vjeggUcE lbWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=SpOS3JE2nXttLreJPOOsQ/eSvNfrc2XeczFVL7PxCI4=; b=pzvqdsOYrdK3jQugrLdu0G/sczDwKZOwuJJqvhZbLudRqUY0Xz0Y8TjuhnEUvgCmxn nlCuStI4Cw8hOIMaO9dlp2TAouEbKa8AeLwhDSPlUBG8+5SaoXwymUWRwbp+V9KJnKxk HK+3ajn86na/jt+hdpINWjQpWNC4ZgWOngI4sELMmggdASiPxtX7+AXx2Tb6nz9rnU+U FFRcvM0QfHBJAS+Q+0yFVHJi4HC5VCw2zuc/4RU/dWf/MiwMYqhXUHtHWxYssQweG8KT fDXvdhAOLpWAq5TTHnCOEH1/z6X7DVbvss/B65bm8imtVrNPwyZkUBvBUr5npyf8j93c u3pA== X-Gm-Message-State: AGi0PubK5vw2q/7W9fvo6K2I8Alqlf+tGaqFSehLsXtdZb5pdWApbWD+ diw0km3h08lQ73NTl664+aQ1t1OhGYv7UPc5p/g= X-Google-Smtp-Source: APiQypLpcG1Q7OlU5uckfqKngIILnKLxEpWX1Xk/xeNgUKV0/MDxlCItcHB3r40AyHCaLddgPNGLKyhtsXUODWtqwYk= X-Received: by 2002:ad4:5604:: with SMTP id ca4mr15547590qvb.6.1588582217228; Mon, 04 May 2020 01:50:17 -0700 (PDT) MIME-Version: 1.0 References: <1928431.D5bU72YO8c@omega> <87ftcgviax.fsf@gnu.org> <2050118.Ql0zV9tn6O@omega> In-Reply-To: <2050118.Ql0zV9tn6O@omega> From: zimoun Date: Mon, 4 May 2020 10:50:06 +0200 Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 41038@debbugs.gnu.org Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Scanner: scn0 X-Spam-Score: 4.89 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=gmail.com header.s=20161025 header.b=DBuoCs2s; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 2001:470:142::17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Scan-Result: default: False [4.89 / 13.00]; GENERIC_REPUTATION(0.00)[-0.49439651165695]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(0.00)[+ip6:2001:470:142::/48:c]; R_DKIM_REJECT(1.00)[gmail.com:s=20161025]; DWL_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; FREEMAIL_FROM(0.00)[gmail.com]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.14), country: US(-0.00), ip: 2001:470:142::17(-0.49)]; DKIM_TRACE(0.00)[gmail.com:-]; RCPT_COUNT_TWO(0.00)[2]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; MAILLIST(-0.20)[mailman]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_IN_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:22989, ipnet:2001:470:142::/48, country:US]; TAGGED_FROM(0.00)[larch=yhetil.org]; FROM_NEQ_ENVFROM(0.00)[zimontoutoune@gmail.com,bug-guix-bounces@gnu.org]; ARC_NA(0.00)[]; RSPAMD_URIBL(4.50)[clisp.org:email]; URIBL_BLOCKED(0.00)[gnu.org:url,clisp.org:email,0.0.0.9:email,0.0.0.8:email]; FROM_HAS_DN(0.00)[]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[41038@debbugs.gnu.org]; HAS_LIST_UNSUB(-0.01)[]; BAD_REP_POLICIES(0.10)[]; DBL_PROHIBIT(0.00)[0.0.0.9:email,0.0.0.8:email]; RCVD_COUNT_SEVEN(0.00)[8]; FORGED_SENDER_MAILLIST(0.00)[]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : SPF not aligned (relaxed),none] X-TUID: IsM6/6TmO+Hb Dear Bruno, Thank you for your feedback. On Mon, 4 May 2020 at 01:10, Bruno Haible wrote: > > Another way to do software development is with =E2=80=98guix environmen= t=E2=80=99: > > > > https://guix.gnu.org/manual/en/html_node/Development.html > > > > For example, if you want to hack on Gettext, run: > > > > guix environment gettext > > > > That spawns a shell containing all the development tools and environmen= t > > variables to hack on gettext. > > Sounds very interesting. But for the moment, I use guix only as a > test platform. Note that Guix (as package manager) provides 3 nice features for development as a test platform: manifest, profile and channel. 1. Manifests allow you to specify the packages you want to install. For example, this command installs make, gcc-toolchain and gdb in the default profile (~/.guix-profile). guix package -m /path/to/my/manifest.scm --8<---------------cut here---------------start------------->8--- (specifications->manifest '("make" "gcc-toolchain" "gdb")) --8<---------------cut here---------------end--------------->8--- And note that "version" or "outputs" (debug) can be specified. Well, manifest can be used with almost all the Guix commands. And manifests compose: "-m m1.scm -m m2.scm". https://guix.gnu.org/manual/devel/en/guix.html#profile_002dmanifest 2. Profiles allow different versions of the same tool without any conflict. For example, let consider you would like to develop using GCC@9 for one project and GCC@8 for another; then: guix install gcc-toolchain@9 -p /path/to/my/gcc-9 guix install gcc-toolchain@8 -p /path/to/my/gcc-8 Then, for example let prepend the environment variables defined by the packages gcc-toolchain@9. eval `guix package --search-paths=3Dprefix -p /path/to/gcc-9` which gcc Note that profiles compose too (see --allow-collisions; warning). Moreover, the regular packages used to develop need time to time to be temporary extended; without being really "installed": guix environment -m /path/to/my/manifest-dev-9.scm --ad-hoc libfoo And options like '--pure' or '--container' are very useful for testing. And when finished, 'libfoo' becomes a dead link in the store (guix gc --list-dead) and so would be garbage collected if needed; the command "guix environment" is very handy when testing and developing, iMHO. 3. Channels allow to track the exact version of the tools. For example, the version used: guix describe -f channels > /path/to/my/channel.scm Then weeks (or month) or on another machine, it is possible to re-install the same packages, for example: guix pull -C /path/to/my/channel.scm guix package -m /path/to/my/manifest.scm -p /path/to/my/olds Note that it is not necessary required to pull back at one specific Guix version for re-installing packages of this very specific Guix version. It is possible to temporarily re-state another Guix version without modifying the current one (see Inferior): guix time-machine -C /path/to/my/channel.scm \ -- package -m /path/to/my/manifest.scm -p /path/to/my/olds This is equivalent to the 2 commands above but without "updating" the current Guix. I do not know if it is useful. Or if it helps to describe Guix as a test platform. The manual is hairy -- from my point of view -- and because Guix re-frames good ol' concepts, it is not easy to find the way. Best regards, simon