由于某些原因,您可能需要在将软件包安装到Linux系统之前对其进行测试。如果是这样,你很幸运!今天,我将向您展示如何使用Nix包管理器在Linux中执行此操作。Nix包管理器的一个显着特点是它允许用户在不先安装包的情况下测试包。当您想临时使用特定程序时,这很有用。要在Linux中测试一个包而不安装它,请确保您首先安装了Nix包管理器。如果没有安装,请参考下面的指南。例如,假设您要测试您的C++代码。您不必安装GCC。只需运行以下命令:$nix-shell-pgcc该命令将构建或下载gcc包及其依赖项,然后将其放入gcc命令所在的Bashshell中,所有这些都不会影响正常环境。LANGUAGE=(unset),LC_ALL=(unset),LANG="en_US.UTF-8"被支持并安装在你的系统上。perl:warning:Fallingbacktothestandardlocale("C").download-using-manifests.pl:perl:warning:设置区域设置失败。download-using-manifests.pl:perl:warning:请检查您的区域设置:download-using-manifests.pl:LANGUAGE=(unset),download-using-manifests。pl:LC_ALL=(unset),download-using-manifests.pl:LANG="en_US.UTF-8"download-using-manifests.pl:支持并安装在您的系统上。download-using-manifests.pl:perl:警告:回落到标准语言环境(“C”)。download-from-binary-cache.pl:perl:警告:设置语言环境失败。download-from-binary-cache.pl:perl:警告:请检查您的区域设置:download-from-binary-cache.pl:LANGUAGE=(unset),download-from-binary-cache.pl:LC_ALL=(unset),download-from-binary-cache.pl:LANG="en_US.UTF-8”。..]获取路径'/nix/store/6mk1s81va81dl4jfbhww86cwkl4gyf4j-stdenv'...perl:警告:设置语言环境失败.perl:警告:请检查您的语言环境设置:LANGUAGE=(未设置),LC_ALL=(未设置),LANG=“en_US.UTF-8”在您的系统上受支持和安装。perl:警告:回退到标准语言环境(“C”)。***正在下载'https://cache.nixos.org/nar/0aznfg1g17a8jdzvnp3pqszs9rq2wiwf2rcgczyg5b3k6d0iricl.nar.xz'到'/nix/store/6mk1s81va81dl4jfbhww86cwkl4gyf4j-stdenv'...%收到的总百分比%Xferd平均速度时间时间时间CurrentDload上传总花费的剩余速度1008324100832400635300:00:010:00:01--:--:--6373[nix-shell:~]$检查GCC版本:[nix-shell:~]$gcc-vUsingbuilt-inspecs.COLLECT_GCC=/nix/store/dyj2k6ch35r1ips4vr97md2i0yvl4r5c-gcc-5.4.0/bin/gccCOLLECT_LTO_WRAPPER=/nix/store/dyj2k6ch35r1ips4vr97md2i0yvl4r5c-gcc-5.4.0/libexec/gcc/x86_64-unknown-linux-gnu/5.4.0/lto-wrapperTarget:x86_64-unknown-linux-gnuConfiguredwith:Threadmodel:posixgccversion5.4.0(GCC)现在,继续测试代码是否完整,然后键入exit返回到控制台。[nix-shell:~]$exitexit一旦退出nix-shell,就不能使用GCC。这是另一个例子。$nix-shell-phello这将构建或下载GNUHello及其依赖项,然后将其放入hello命令所在的Bashshell中,所有这些都不会影响您的正常环境:[nix-shell:~]$helloHello,world!输入exit返回到控制台。[nix-shell:~]$exit现在测试你的hello程序是否可用。$hellohello:commandnotfound有关Nix包管理器的更多详细信息,请参阅以下指南。
