[英]Org-mode with Emacs: Where do I have to put my export in order to be able to use it in Emacs daemon?
自從今天早上安裝CUDA 9和cudnn 7之后,我一直在掙扎。我將emacs作為守護程序運行,將zsh作為默認外殼程序運行,並且我希望使用用戶組織模式來編寫筆記本。
這是我的.zshenv:
...
export LIBRARY_PATH="/usr/include/gtk-3.0:$LIBRARY_PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-9.0/lib64:$LD_LIBRARY_FOUND"
export PATH="/usr/local/cuda-9.0/bin:$PATH"
export SHELL="/bin/zsh"
export WORKON_HOME=$HOME/.virtualenvs
這是最小的筆記本:
#+BEGIN_SRC ipython :results drawer :async t :session test
import os
print(os.environ["LD_LIBRARY_PATH"])
#+END_SRC
問題是emacs不知道LD_LIBRARY_PATH。 它說KeyError。
您知道我可以在哪里放置環境變量,以便可以同時被終端和Emacs-As-A-Daemon讀取嗎? 我以為它在.zshenv和.zprofile中,但是它們都不在守護程序模式下工作(因為是的,當我定期啟動它時,它就可以工作)。
精度:os.environ的內容表明它似乎只讀取.profile文件...但是為什么呢? 我的默認終端是zsh,而不是bash。 我試圖將導出文件放在.zprofile中,重新啟動emacs的systemd守護程序,甚至重新啟動,但沒有任何效果。.很抱歉,這是一個愚蠢的問題。
好吧,我成功解決了我的問題。 我沒有處理Emacs配置,而是通過添加EnvironmentFile變量更改了systemd單元文件,該變量將其設置為等於.zshenv的路徑:
EnvironmentFile=~/.zshenv
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.