【发布时间】:2021-01-14 20:06:49
【问题描述】:
我正在使用 nix 和 cabal2nix 构建 Haskell 外国图书馆。构建后./result/目录包含libroman.so在/lib/ghc-8.8.4/子目录下。
当尝试在另一个派生中使用它时(在我的例子中是 qt ),链接器看不到它。
Haskell nix:
let
pkgs = import <nixpkgs> {};
in
pkgs.haskellPackages.callCabal2nix "roman" ./. {}
Qt 尼克斯:
let
pkgs = import <nixpkgs> {};
romanEngine = import ../engine/default.nix;
in
pkgs.qt5.mkDerivation {
name = "roman-gui";
src = ./.;
nativeBuildInputs = [
pkgs.qt5.qmake
];
buildInputs = [
pkgs.qt5.qtbase
romanEngine
];
}
链接器错误:
/nix/store/b10shv9yqbgps47y0n8x7l7bq8fmp1i6-binutils-2.31.1/bin/ld: cannot find -lroman
如何正确链接到我已构建的外部库?
【问题讨论】: