"nvidiaBeta"ドライバをビルドしようとしていますが、nvidia設定をビルドできず、エラーが発生します。
gtk+-2.x/ctkgridlicense.c:38:23: 致命的なエラー: dbus/dbus.h: そのファイルやディレクトリはありません。
さまざまなdbusパッケージをインストールしようとしましたが、nixストアから入手した最も近いのは、dbus_cplusplusフォークの「dbus-c ++ / dbus.h」でした。検索中に明らかに必要なものが「dbus-libs」に含まれるべきであることを読んでいましたが、チャンネル17.03では利用できないようです。
このライブラリにどの派生物を導入すべきかわからないようです。どういうわけかこの問題を解決し、dbus_cplusplusフォークで得られた問題を使用することができますか?
答え1
すでに述べたように、Nixはパッケージをビルドするときにシステムやユーザーがインストールしたパッケージを気にせず、関連パッケージはすべての依存関係を明示的に宣言する必要があります。
この特定の質問に関連して、ファイルは派生結果にありますdbus/dbus.h
。 Nixは、nvidiaで設定したビルド入力を入力するために使用できるパッケージ定義を上書きするツールも提供しています。以下を追加してください。dev
dbus
dbus.dev
configuration.nix
nixpkgs.config.packageOverrides = pkgs:
{
linuxPackages = pkgs.linuxPackages.extend(self: super: {
nvidia_x11_beta = super.nvidia_x11_beta // {
settings = super.nvidia_x11_beta.settings.overrideAttrs(old: {
buildInputs = old.buildInputs ++ [ pkgs.dbus.dev ];
});
};
});
};
17.03 システムでビルドが成功する可能性があります。
答え2
他のディストリビューションとは異なり、NixOSでは、正しいライブラリをインストールしてもパッケージが正常に構築されるように依存関係を宣言する必要があるため、違いはありません。
たとえば、パッケージをビルドしようとするとㅏそれはパッケージに依存します第二、インストールパッケージ第二依存関係は提供されません。ㅏまったく見えないでしょう。
Nvidiaの場合は見えません。Nvidia Betaオプションとして。 「nv」(オープンソースドライバ)または「nvidia」(専用ドライバ)を使用できます。バラよりhttps://nixos.org/nixos/manual/#idm140737316337280