为什么在命令提示符中设置的环境变量在我启动Spyder时没有效果
Why do the environment variables set in command prompt have no effect when I start Spyder
我正在为 Python 使用 Spyder Anaconda IDE。我正在 Spyder IDE 中编写代码,需要为 Theano 库设置很少的环境变量($CPATH、$LIBRARY_PATH 和 $LD_LIBRARY_PATH)。
我正在使用命令启动 Spyder
sudo ./spyder
开始一切顺利。即使我在
中设置了环境变量
/root/.bashrc
文件,代码仍然无法接受路径,如果我尝试打印
print os.environ["LD_LIBRARY_PATH"]
它引发了 KeyError。
我用普通用户尝试了以上所有方法,但仍然失败。我怎样才能让 Spyder IDE 能够查看上述路径中的文件,我可以在 Spyder 中的什么地方设置它们?
您需要告诉 sudoers
文件在使用 sudo
命令时要保留哪些环境变量。
编辑sudoers文件运行。
sudo visudo
然后将下面这行添加到它的末尾。
Defaults env_keep = "LD_LIBRARY_PATH CPATH LIBRARY_PATH"
然后 export
你的变量。
export LD_LIBRARY_PATH="/path/to/library"
现在你应该可以 运行 它了。
可以在此处找到更多信息How to keep Environment Variables when Using SUDO
我正在为 Python 使用 Spyder Anaconda IDE。我正在 Spyder IDE 中编写代码,需要为 Theano 库设置很少的环境变量($CPATH、$LIBRARY_PATH 和 $LD_LIBRARY_PATH)。
我正在使用命令启动 Spyder
sudo ./spyder
开始一切顺利。即使我在
中设置了环境变量/root/.bashrc
文件,代码仍然无法接受路径,如果我尝试打印
print os.environ["LD_LIBRARY_PATH"]
它引发了 KeyError。
我用普通用户尝试了以上所有方法,但仍然失败。我怎样才能让 Spyder IDE 能够查看上述路径中的文件,我可以在 Spyder 中的什么地方设置它们?
您需要告诉 sudoers
文件在使用 sudo
命令时要保留哪些环境变量。
编辑sudoers文件运行。
sudo visudo
然后将下面这行添加到它的末尾。
Defaults env_keep = "LD_LIBRARY_PATH CPATH LIBRARY_PATH"
然后 export
你的变量。
export LD_LIBRARY_PATH="/path/to/library"
现在你应该可以 运行 它了。
可以在此处找到更多信息How to keep Environment Variables when Using SUDO