diff options
author | Michael Hueschen <m@mhueschen.dev> | 2024-01-22 03:17:05 -0700 |
---|---|---|
committer | Someone <newkozlukov@gmail.com> | 2024-01-24 12:39:29 +0000 |
commit | bf63d695b804b1c995c7ae4427a8a86936ea6d25 (patch) | |
tree | 3c481dc4f64075a65e745f7b0303eac1e974abd5 | |
parent | 1387ea21178f9f154944013d4dd9764b54c69deb (diff) |
nix: add cc to devShell LD_LIBRARY_PATH
this fixes the error I encountered when trying to run the convert.py
script in a venv:
```
$ nix develop
[...]$ source .venv/bin/activate
(.venv)
[...]$ pip3 install -r requirements.txt
<... clipped ...>
[...]$ python3 ./convert.py
Traceback (most recent call last):
File "/home/mhueschen/projects-reference/llama.cpp/./convert.py", line 40, in <module>
from sentencepiece import SentencePieceProcessor
File "/home/mhueschen/projects-reference/llama.cpp/.venv/lib/python3.11/site-packages/sentencepiece/__init__.py", line 13, in <module>
from . import _sentencepiece
ImportError: libstdc++.so.6: cannot open shared object file: No such file or directory
```
however, I am not sure this is the cleanest way to address this linker
issue...
-rw-r--r-- | .devops/nix/package.nix | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/.devops/nix/package.nix b/.devops/nix/package.nix index c25d99f0..91ddb889 100644 --- a/.devops/nix/package.nix +++ b/.devops/nix/package.nix @@ -221,10 +221,16 @@ effectiveStdenv.mkDerivation ( ; shell = mkShell { + NIX_LD_LIBRARY_PATH = lib.makeLibraryPath [ + effectiveStdenv.cc.cc + ]; name = "shell-${finalAttrs.finalPackage.name}"; description = "contains numpy and sentencepiece"; buildInputs = [ llama-python ]; inputsFrom = [ finalAttrs.finalPackage ]; + shellHook = '' + export LD_LIBRARY_PATH=$NIX_LD_LIBRARY_PATH + ''; }; shell-extra = mkShell { |