私はNixOSに初めてアクセスし、Flexを使用するプロジェクトを構築しようとしています。プロジェクトをビルドしようとすると、次のエラーが発生します。
/nix/store/b10shv9yqbgps47y0n8x7l7bq8fmp1i6-binutils-2.31.1/bin/ld: cannot find -lfl
どうすれば解決できますか?
NixOSで「ld:見つかりません-lc」glibc.static
shell.nixに追加する必要があることを示していますが、buildInputs
まだ何も解決していません。
編集:これshell.nix
{ pkgs ? import <nixpkgs> {} }
with pkgs;
stdenv.mkDerivation {
buildInputs = {
name = "my-project";
buildInputs = [ flex ]
}
}
答え1
解決しました! make ファイルに追加します。
FLEX_PATH := $(shell dirname $(shell which flex))
LIB_PATH := $(shell readlink -f "$(FLEX_PATH)/../lib")
clang ... -L $(LIB_PATH) -lfl ...