gpt4 book ai didi

Nix:如何使用覆盖全局覆盖 stdenv.cc?

转载 作者:行者123 更新时间:2023-12-04 04:13:37 24 4
gpt4 key购买 nike

我想使用覆盖(即不更改 nixpkgs)全局覆盖 stdenv.cc 到特定的 GCC 版本(不一定在 nixpkgs 中)。有没有办法做到这一点?

像这样的覆盖会导致无限递归(因为包 gcc49stdenv 作为输入):

self: super:
{
stdenv = super.overrideCC super.stdenv super.gcc49;
}

全局更改 stdenv.cc 的正确方法是什么?

stdenv = ... 中手动设置 import nixpkgs 是不可行的,因为我想不仅在构建/使用 nix 表达式时替换 cc,而且在例如 nix-shell -p package

有人可以帮我弄这个吗?

最佳答案

(import <nixpkgs> { overlays = [(self: super: { gcc = self.gcc10; })]; }).stdenv.cc

这将返回 gcc-10.1.0 的派生,因此它可以工作。

关于Nix:如何使用覆盖全局覆盖 stdenv.cc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61222188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com