我们有一个问题,我想运行一个导入libClang(import Clang
)的haskell脚本,我做了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路径或我的LibClang-9.0.0所在的.cabal目录的lib路径?)
所以我得到了:
echo $LD_LIBRARY_PATH
/home/foo/Downloads/clang+llvm-2.9-i686-linux/lib:/home/foo/.cabal/lib
再次运行runhaskell后,同样的问题仍然存在,我该怎么办?
答案 0 :(得分:0)
在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
帮助链接器。