shell - 鱼壳似乎忽略了 LD_LIBRARY_PATH?
问题描述
我需要在启动darknet之前LD_LIBRARY_PATH
设置CUDA。看起来像这样:
echo $LD_LIBRARY_PATH
/usr/local/cuda/lib64
当应用程序启动时,它无法加载它应该在该目录中找到的库:
./darknet
./darknet: error while loading shared libraries: libcudart.so.10.0:
cannot open shared object file: No such file or directory
但是该库肯定在该目录中:
ldd /usr/local/cuda/lib64/libcudart.so.10.0
linux-vdso.so.1 => (0x00007ffe7bf2d000)
...etc...
我假设我没有在鱼中正确设置 LD_LIBRARY_PATH。这就是我最初在鱼中的做法:
set -U LD_LIBRARY_PATH /usr/local/cuda/lib64
echo $LD_LIBRARY_PATH
/usr/local/cuda/lib64
当我在 bash 中尝试完全相同的事情时,它工作正常:
bash
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
./darknet
usage: ./darknet <function>
所有这些都在运行 fish 2.2.0 和 bash 4.3.48 的 64 位 Ubuntu 16.04.6 上。
解决方案
您没有导出变量。相反,请执行以下操作:
set -Ux LD_LIBRARY_PATH /usr/local/cuda/lib64
./darknet
推荐阅读
- html - 表格中图像下方的中心文本
- java - Xamarin 错误仅 Android 6.0 Mono.AndroidTools.InstallFailedException 和 NSTALL_PARSE_FAILED_MANIFEST_MALFORMED
- python - 我们如何从 Gpy 获得多维输出
- python - DJango REST Framework:如何使用 ModelViewSet 编写 Create、List、Update 和 Delete
- sql - 如何根据匹配的列变量组合行
- clojure - 在 Clojure 中除以零
- javascript - 为什么我的导航栏下拉动画不起作用?
- python - 无法在 Pygame 中加载音乐
- java - 数组中的 LocalDate 给了我空结果
- .net-core - 使用 NuGet for InsuranceBot 示例在 VS 2017 中返回 .NetCore 错误