Ошибка компоновщика пакета на Haskell: невозможно загрузить .so / .DLL для: clang - PullRequest
1 голос
/ 13 мая 2011

я, ребята, у меня проблема, я хочу запустить скрипт на haskell, который импортирует libClang (import Clang), я сделал cabal install libClang до того, и он будет работать

теперь, когда я делаю runhaskell foo.hs, я получаю:

foo.hs: <command line>: can't load .so/.DLL for: clang (libclang.so: cannot open shared object file: No such file or directory)

я знаю, что мне нужно добавить путь к библиотеке LD_LIBRARY_PATH, поэтому я добавляю несколько путей к нему, потому что я не знаю точно, что мне нужно использовать (должен ли я использовать путь lib к пути clang / llvm или lib путь к каталогу .cabal, где находится мой LibClang-9.0.0?)

так что я получил:

echo $LD_LIBRARY_PATH 
/home/foo/Downloads/clang+llvm-2.9-i686-linux/lib:/home/foo/.cabal/lib

после повторного запуска runhaskell, та же проблема все еще существует, что мне делать?

1 Ответ

0 голосов
/ 13 мая 2011

В Arch Linux, по крайней мере, clang устанавливается в:

/usr/lib/llvm/libclang.a
/usr/lib/llvm/libclang.so

, чтобы компоновщик мог найти эту библиотеку.Вы также можете добавить пути к:

$ echo $LDFLAGS 
-L/usr/local/lib -L/home/dons/lib

$ echo $LD_LIBRARY_PATH 
/home/dons/lib

, чтобы помочь компоновщику.

...