如何在已激活的Anaconda环境中正确配置Intel OneAPI环境变量
问题原因
OneAPI的setvars.sh初始化脚本默认会将其自带的IntelPython路径注入到环境变量最前端,同时修改conda相关配置参数,导致系统优先识别Intel提供的conda实例,覆盖了你原本的Anaconda环境配置,才会出现原有环境消失、无法激活的问题。你之前设备配置成功是因为该设备的OneAPI版本默认未启用IntelPython环境注入,或加载时做了排除配置。
正确操作方案
方法一:加载OneAPI时排除IntelPython组件(最推荐,无副作用)
不需要用到IntelPython环境的话,直接执行如下命令加载环境变量即可:source /opt/intel/oneapi/setvars.sh --exclude=intelpython该参数会跳过IntelPython的环境注入,不会修改你现有的Anaconda配置,加载完成后原有conda环境完全不受影响,OneAPI的其他编译工具、数学库等功能均可正常使用。
方法二:加载OneAPI后恢复Anaconda环境
如果你需要用到IntelPython的相关依赖,可以在执行source /opt/intel/oneapi/setvars.sh之后,重新初始化你自己的Anaconda实例,再激活原有环境:# 替换成你自己的Anaconda安装路径下的conda.sh source /path/anaconda3/etc/profile.d/conda.sh conda activate env_name执行完成后,你原本的Anaconda环境会被恢复为激活状态,同时OneAPI的环境变量也会保留生效。
验证效果
操作完成后执行conda env list,输出结果会和你预期的正确格式一致,原有env_name保持激活状态,同时可正常调用OneAPI的各类工具。
内容的提问来源于stack exchange,提问作者FSeed
相关产品推荐
相关产品推荐

