小编Poo*_*avi的帖子

如何使用 Nix 构建具有本机扩展的 Ruby Gem

我正在尝试构建一个bundlerEnvfor rails. Nix 不知何故知道nokogiri( 的依赖项rails)需要zliblibxml2libxslt编译失败。

#Gemfile
gem "rails"
Run Code Online (Sandbox Code Playgroud)
#default.nix
{ pkgs ? import <nixpkgs> {} }:

with pkgs;

bundlerEnv {
  name = "smt";
  inherit ruby;

  gemfile  = ./Gemfile;
  lockfile = ./Gemfile.lock;
  gemset   = ./gemset.nix;
}
Run Code Online (Sandbox Code Playgroud)

满输出

$ nix-build
...
buildFlags: --use-system-libraries --with-zlib-dir=/nix/store/dn9l2kd6ai731k34pzlzr5dz3in0rn31-zlib-1.2.8-dev --with-xml2-lib=/nix/store/9w15hz68wz5qnihfhsbr281d0sfs20a8-libxml2-2.9.3/lib --with-xml2-include=/nix/store/rq94vzxa92p30prfgv9jz83xiy8hkn2k-libxml2-2.9.3-dev/include/libxml2 --with-xslt-lib=/nix/store/fv137j5wxp4dg1wjqdbk8i2l087163b7-libxslt-1.1.28/lib --with-xslt-include=/nix/store/j7y29aggnzmlgh5bccp9f7vmiknh16fm-libxslt-1.1.28-dev/include --with-exslt-lib=/nix/store/fv137j5wxp4dg1wjqdbk8i2l087163b7-libxslt-1.1.28/lib --with-exslt-include=/nix/store/j7y29aggnzmlgh5bccp9f7vmiknh16fm-libxslt-1.1.28-dev/include
WARNING:  You build with buildroot.
  Build root: /
  Bin dir: /nix/store/z26mymfryhqqh7y8w94qr0xc88q46dvr-ruby2.3.1-p0-nokogiri-1.6.8/lib/ruby/gems/2.3.1/bin
  Gem home: /nix/store/z26mymfryhqqh7y8w94qr0xc88q46dvr-ruby2.3.1-p0-nokogiri-1.6.8/lib/ruby/gems/2.3.1

...
*** extconf.rb failed *** …
Run Code Online (Sandbox Code Playgroud)

ruby nix

5
推荐指数
1
解决办法
1579
查看次数

标签 统计

nix ×1

ruby ×1