1

我有一个开发外壳,buildInputs其中包含一个条目qt55.qtbase。这很好用。

今天,我遇到了一个 qt 库中发生的段错误,我想要带有调试符号的 qt 库。

我看了看,nixpkgs/pkgs/development/libraries/qt-5/5.5/default.nix发现它需要一个参数developerBuild

我之前已经将参数引入到buildInputs像这样的简单 shell 中callPackage,但是 qt 包的构造超出了我的想象,我无法为 shell 生成有效的 nix 文件。

如何为安装带有调试符号的 qt 库的 qt 5.5 软件开发创建开发 shell?

4

1 回答 1

2

使用override(参见https://nixos.org/nixpkgs/manual/#sec-pkg-override),所以在你的 shell.nix/default.nix 中:

let qtBaseWithDebug = qt55.base.override { developerBuild = true; }; in
...
   buildInputs = [ ... qtBaseWithDebug ... ];
...

顺便说一句,你可以在http://schmitthenner.eu/nixos-homepage/nixos/packages.html看到包的参数(虽然它现在有点过时了)

于 2016-04-06T06:07:09.277 回答