如何导出 sublime 构建工具的 PATH?
How to export PATH for sublime build tool?
我想为 sublime text 创建一个新的 "build tool",这样我就可以 运行 我的 python 脚本和带有 tensorflow 的 anaconda 环境。在我的其他机器上,这没有问题,但在我的支持 GPU 的 ubuntu 机器上,我收到错误。
我认为这是由于缺少路径。错误消息中提供的路径不包含 cuda 路径,尽管我已将它们包含在 .bashrc 中。
更新
我更改了 ~/.profile 以导出路径。但是tensorflow还是不会从sublime开始。 运行 我直接从终端脚本是没有问题的。
我得到 ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
所以不知何故找不到 GPU 的东西(cuda?)
谢谢
好的,我明白了:
问题是缺少 LD_LIBRARY_PATH 变量。我只在 .bashrc
.
导出了它
当我添加
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
到~/.profile
它正在工作(不要忘记重新启动)。
如果我使用 subl
从终端启动 sublime,它也可以传递所有变量。
我最近遇到了类似的问题。从一天到另一天,Sublime Text 停止读取一些环境变量,但是将它们从 .bashrc
更改为 .profile
并没有什么不同(特别是因为 .profile 调用 .bashrc)。
所以一种不每次都从终端启动 Sublime Text 的方法,您可以使用 env
键将环境变量直接添加到构建工具中,如下所示:
{
"cmd": ["python3.5", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"env":
{
"LD_LIBRARY_PATH": "$LD_LIBRARY_PATH:/path/to/lib/folder",
"ANOTHER_EV": "/this/other/path/if/needed"
}
}
即使出于某种原因 sublime text 从终端启动,也不应该有问题,因为它会调用以前的路径。
我想为 sublime text 创建一个新的 "build tool",这样我就可以 运行 我的 python 脚本和带有 tensorflow 的 anaconda 环境。在我的其他机器上,这没有问题,但在我的支持 GPU 的 ubuntu 机器上,我收到错误。 我认为这是由于缺少路径。错误消息中提供的路径不包含 cuda 路径,尽管我已将它们包含在 .bashrc 中。
更新
我更改了 ~/.profile 以导出路径。但是tensorflow还是不会从sublime开始。 运行 我直接从终端脚本是没有问题的。
我得到 ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
所以不知何故找不到 GPU 的东西(cuda?)
谢谢
好的,我明白了:
问题是缺少 LD_LIBRARY_PATH 变量。我只在 .bashrc
.
当我添加
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
到~/.profile
它正在工作(不要忘记重新启动)。
如果我使用 subl
从终端启动 sublime,它也可以传递所有变量。
我最近遇到了类似的问题。从一天到另一天,Sublime Text 停止读取一些环境变量,但是将它们从 .bashrc
更改为 .profile
并没有什么不同(特别是因为 .profile 调用 .bashrc)。
所以一种不每次都从终端启动 Sublime Text 的方法,您可以使用 env
键将环境变量直接添加到构建工具中,如下所示:
{
"cmd": ["python3.5", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"env":
{
"LD_LIBRARY_PATH": "$LD_LIBRARY_PATH:/path/to/lib/folder",
"ANOTHER_EV": "/this/other/path/if/needed"
}
}
即使出于某种原因 sublime text 从终端启动,也不应该有问题,因为它会调用以前的路径。