Community
cancel
Showing results for 
Search instead for 
Did you mean: 
tinkham__douglas
Beginner
663 Views

setvars.sh failing on macOS Catalina using zsh; works for bash

Jump to solution

I don't see a place to post possible bugs except in the forums.

MacOS 10.15.6 (Catalina), with oneAPI Base (2021.1.8.1970) and HPC (2021.1.8.1885)Toolkits installed:

"source /opt/intel/oneapi/setvars.sh" fails for me when using the zsh shell in Terminal, but it works just fine when using bash shell in Terminal. Problem is in TBB setting of TBBROOT, and somewhere else with rreadlink. Output is below.

No showstopper, I just noticed that Apple is now pushing folks to use zsh instead of bash in Catalina so many macos users might be using zsh.

 

Output of setvars.sh:

me@TAG-816 ~ % source /opt/intel/oneapi/setvars.sh

:: initializing oneAPI environment ...

:: daal -- latest

:: advisor -- latest

:: intelpython -- latest

:: ippcp -- latest

:: dnnl -- latest

:: tbb -- latest

usage: dirname path

ERROR: libtbb.dylib library does not exist in /Users/me/../lib.

:: mkl -- latest

:: ERROR: rreadlink(): '' does not exist.

 

:: dev-utilities -- latest

:: ipp -- latest

:: vtune_profiler -- latest

:: compiler -- latest

:: oneAPI environment initialized ::

me@TAG-816 ~ %

0 Kudos
1 Solution
Zhiqi_T_Intel
Employee
605 Views

ZSH support will be complete for MacOS in the future oneAPI release. For now, please try this workaround.


% bash -c 'source /opt/intel/oneapi/setvars.sh ; exec zsh'

:: initializing oneAPI environment ...

:: daal -- latest

:: advisor -- latest

:: intelpython -- latest

:: ippcp -- latest

:: dnnl -- latest

:: tbb -- latest

:: mkl -- latest


:: dev-utilities -- latest

:: ipp -- latest

:: vtune_profiler -- latest

:: oneAPI environment initialized ::

% which vtune

/opt/intel/oneapi/vtune_profiler/2021.1-beta08/MacOS/vtune



View solution in original post

4 Replies
PrasanthD_intel
Moderator
651 Views

Hi Douglas,


Thanks for the suggestion.

Currently, GNU bash is the only shell supported.(https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-base-toolkit-system-requi...)

We are considering this as a feature request and forwarding your query to the concerned team.


Regards

Prasanth


vinc17
Beginner
583 Views

Same issue with zsh under Linux. Note that setvars.sh contains the following comment:

# NOTE: This script is designed to be POSIX compatible, so that it can more
# easily be _sourced_ by a variety of shell scripts (zsh, ksh, bash, etc.) on
# a variety of UNIX-style systems (macOS and Linux). The "shebang" on line one
# of this script has no bearing on the actual shell that is used to execute
# this script, because it will always be executed within the context of the
# shell from which it is sourced.

So, if bash is required, I'm wondering why other shells are mentioned. Also, remember that with zsh, the user may source this script under non-default options (for this reason I also get many warnings such as "scalar parameter c created globally in function dnnl_match_configuration"). I don't know the best solution, but a possibility is to source all the code in a function that starts with "emulate -LR zsh".

Zhiqi_T_Intel
Employee
632 Views

This is indeed an issue with oneAPI beta08. I have lodged a ticket to fix this issue. Thank you very much for reporting this issue!


Zhiqi_T_Intel
Employee
606 Views

ZSH support will be complete for MacOS in the future oneAPI release. For now, please try this workaround.


% bash -c 'source /opt/intel/oneapi/setvars.sh ; exec zsh'

:: initializing oneAPI environment ...

:: daal -- latest

:: advisor -- latest

:: intelpython -- latest

:: ippcp -- latest

:: dnnl -- latest

:: tbb -- latest

:: mkl -- latest


:: dev-utilities -- latest

:: ipp -- latest

:: vtune_profiler -- latest

:: oneAPI environment initialized ::

% which vtune

/opt/intel/oneapi/vtune_profiler/2021.1-beta08/MacOS/vtune



View solution in original post

Reply