I am struggling with the usage of intel OneAPI, specifically compiler (DPC++/C++) and Vtune Profiler.
I've installed everything successfully, used source setvarsh.sh
in the installation directory and everything worked fine until I closed the shell.
It appears that after setting the environmental variables they only last in an active terminal session and do not stay with me permanently. Directly after using source setvars.sh
I am able to use icx
or vtune-gui
command. After starting new session I get only command not found
error.
Is it something wrong with the script or should I use a specific switch or something?
System info:
System: Ubuntu 22.04. LTS 64-bit
GNOME Version: 42.0
Shell: Zsh
Vtune Profiler: 2022.1.0.98
Intel Compiler: 2022.0.2.84
For now I've solved the problem partially by adding an alias in .zshrc
to run the setvars.sh
script using one command but that seems like a very non-elegant solution. I'd appreciate any hints. Thanks!
That is the expected behavior, source
can only affect the current environment. There is no "nice" way to set the environment variables permanently from a script, you need to edit your config files.
What you can do is to automatically setup the environment when starting a new zsh
session. That can be done by adding source /opt/intel/oneapi/setvars.sh
to your .zshrc
.