Using Clang instead of GCC: Difference between revisions
imported>Milahu revert my last edit: add section: ld: cannot find -lstdc++ |
imported>Artturin add replaceStdenv |
||
Line 16: | Line 16: | ||
If you have a set of packages in a repository tree, you can set the | If you have a set of packages in a repository tree, you can set the | ||
<code>stdenv</code> value in the scope where the <code>callPackage</code> are | <code>stdenv</code> value in the scope where the <code>callPackage</code> are | ||
called. Be carefull '''all the packages present in the scope will be built with Clang''' | called. Be carefull '''all the packages present in the scope will be built with Clang''' | ||
because the <code>callPackage</code> that resolves the package function | because the <code>callPackage</code> that resolves the package function | ||
inputs will use the <code>pkgs.clangStdenv</code> for all packages. | inputs will use the <code>pkgs.clangStdenv</code> for all packages. | ||
Line 27: | Line 27: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
or import nixpkgs with replaceStdenv. | |||
<syntaxhighlight lang="nix"> | |||
import <nixpkgs> { config = { replaceStdenv = ({ pkgs }: pkgs.clangStdenv); }; } | |||
</syntaxhighlight> | |||
== For a specific package in a repository tree == | == For a specific package in a repository tree == |