Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28381 Discussions

Problem updating OneAPI to version 2022.0.0

rudi-gaelzer
New Contributor I
3,356 Views

My system: OS: Fedora Core 34/35

Yesterday I upgraded the OneAPI suite via Fedora's DNF app.  

The suite was update to version 2022.0.0 whereas the previous versions installed is 2021.5.0

Looking at the configuration instructions in 

https://www.intel.com/content/www/us/en/develop/documentation/get-started-with-intel-oneapi-base-linux/top/before-you-begin.html

I verified that the configuration for CLI development did not change: in /etc/profile.d I created the script intel_apps.sh which contains the single-line instruction:

source /opt/intel/oneapi/setvars.sh

However, this is what I get in a terminal:

:: WARNING: setvars.sh has already been run. Skipping re-execution.
   To force a re-execution of setvars.sh, use the '--force' option.
   Using '--force' can result in excessive use of your environment variables.
  
usage: source setvars.sh [--force] [--config=file] [--help] [...]
  --force        Force setvars.sh to re-run, doing so may overload environment.
  --config=file  Customize env vars using a setvars.sh configuration file.
  --help         Display this help message and exit.
  ...            Additional args are passed to individual env/vars.sh scripts
                 and should follow this script's arguments.
  
  Some POSIX shells do not accept command-line options. In that case, you can pass
  command-line options via the SETVARS_ARGS environment variable. For example:
  
  $ SETVARS_ARGS="ia32 --config=config.txt" ; export SETVARS_ARGS
  $ . path/to/setvars.sh
  
  The SETVARS_ARGS environment variable is cleared on exiting setvars.sh.
  
rudi@landau|~>ifort -V
Intel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.5.0 Build 20211109_000000
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

rudi@landau|~>icc -V
Intel(R) C Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.5.0 Build 20211109_000000
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

You can see that the CLI is still accessing the older version of the Fortran and C compilers. 

Moreover, there are additional warnings appearing when the terminal is opened.  The first warning (setvars.sh has already been run) was being issued since the beginning of the OneAPI suite.  However, whatever comes next started after the update to version 2022.0.0.

Any clues/suggestions?

0 Kudos
1 Solution
Barbara_P_Intel
Moderator
3,117 Views

These version numbers with oneAPI 2022 are going to drive us all nuts!!

The latest version of the Intel Fortran Compiler Classic (ifort) that is part of oneAPI 2022.1.x is

 

$ ifort --version
ifort (IFORT) 2021.5.0 20211109
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

 

Yes, it is 2021.5.0.  The components including the compiler follow semantic versioning. Since the updates to ifort did not break the API/ABI compatibility, the major number did not change.  Read this article about Intel oneAPI Semantic Versioning.

The build date of the compiler is older than the build date of the package because it take some time to assemble all the components and make sure they work well together.

And the version of Intel Fortran Compiler (ifx) is

$ ifx --version
ifx (IFORT) 2022.0.0 20211123
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.

View solution in original post

9 Replies
Ron_Green
Moderator
3,311 Views

the error you see is what happens if the setvars.sh has been run twice.  Check your .bashrc, .login, .profile - in other words all your 'dot' files to see if you put the 'source /opt/intel/oneapi/setvars.sh' into one of these dot files that gets invoked with you login.  You can check your PATH right after login.  if you see paths to the oneapi tools you know it's sourced setvars.sh somewhere.

0 Kudos
JohnNichols
Valued Contributor III
3,306 Views

Has the update only been released for LINUX?

0 Kudos
IanH
Honored Contributor II
3,279 Views

No - it is available for the other platforms too.

0 Kudos
JohnNichols
Valued Contributor III
3,221 Views

Thank you.  I installed VS 2022 and surprisingly MS has removed some of the things that annoyed me in the preview. The install of the base kit and the HPC took 3 hours on a corei7 with an SSD - this was surprising.   The integration took a long time, much longer than the 10 minutes suggested. 

I thought that MS only supported the latest 2 versions of VS, but they are supporting three.  

The only matter with VS is the poor color themes. If you are a 12 year old then the one available online are interestingly centered around black, but I cannot find an update of the VS Color Theme vsix that includes the basic reds, greens etc..   I like the dark red theme, I no bad taste.  But I hacked the 2019 vsix and got it running for red on the 2022.  If anyone wants to try it, please send a private message.  

 

0 Kudos
rudi-gaelzer
New Contributor I
3,235 Views

I checked my local dot files and this is not the case for me.

After some digging I've found out that what was happening was that the scripts on /etc/profile.d were being executed twice each time bash was called, as it happens when a terminal is opened, for example.

In Fedora systems, both /etc/profile and /etc/bashrc contain the instructions

    for i in /etc/profile.d/*.sh; do
        if [ -r "$i" ]; then
            if [ "$PS1" ]; then
                . "$i"
            else
                . "$i" >/dev/null
            fi
        fi
    done

That's the reason I was getting those warnings.  See, e.g.,

https://serverfault.com/questions/889792/scripts-in-etc-profile-d-are-being-executed-twice-on-login

So, from now on I'm sourcing setvars.sh from .bash_profile as suggested.  It's not a user-wide solution as I wanted, but it works.  I got rid of the warnings.

Perhaps the "Get Started" guide should be edited to warn the users about this.

The main problem remains though.  I still don't have access to the 2022.0.0 version of OneAPI.

0 Kudos
Barbara_P_Intel
Moderator
3,140 Views

Can you be more specific about "still don't have access to the 2022.0.0 version of oneAPI"?  What are you trying to do?

 

0 Kudos
rudi-gaelzer
New Contributor I
3,030 Views

In short, I'm trying to use the latest version of the Fortran and C compilers installed in my box.

As I wrote above, I'm running Fedora Linux and using the dnf system to update the OneAPI suite.  

If I open a terminal and list, e.g., the installed versions of the Fortran compiler I get:

rudi@landau|~>dnf list installed *intel*fortran*
Installed Packages
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.2.0.x86_64            2021.2.0-610              @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.3.0.x86_64            2021.3.0-3350             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.4.0.x86_64            2021.4.0-3561             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.0.x86_64            2022.0.0-3623             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.1.x86_64            2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran.x86_64                                                      2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-2021.2.0.x86_64                                             2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-2021.3.0.x86_64                                             2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-2021.4.0.x86_64                                             2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-2022.0.0.x86_64                                             2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-2022.0.1.x86_64                                             2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-common-2021.2.0.noarch                                      2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-common-2021.3.0.noarch                                      2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-common-2021.4.0.noarch                                      2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-common-2022.0.0.noarch                                      2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-common-2022.0.1.noarch                                      2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.2.0.x86_64                                     2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.3.0.x86_64                                     2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.4.0.x86_64                                     2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-runtime-2022.0.0.x86_64                                     2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-runtime-2022.0.1.x86_64                                     2022.0.1-3633             @OneAPI

As you can see, my box has 5 different versions of the classic Fortran compiler installed.  In particular, the latest versions 2022.0.0 and 2022.0.1.

However, if I verify which version I have access to, I get: 

rudi@landau|~>ifort -V
Intel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.5.0 Build 20211109_000000
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

It says that the buid date is November 09, 2021.

However, if I query the latest version:

rudi@landau|~>rpm -qil intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.1.x86_64
Name        : intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.1
Version     : 2022.0.1
Release     : 3633
Architecture: x86_64
Install Date: seg 20 dez 2021 14:53:05
Group       : Intel(R) DPC++/C++ Pro / Fortran Compiler Runtime Shared Files
Size        : 324700
License     : Copyright Intel Corporation.
Signature   : RSA/SHA256, qua 15 dez 2021 06:56:30, Key ID acfa9fc57e6c5dbe
Source RPM  : intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.1-2022.0.1-3633.src.rpm
Build Date  : qua 15 dez 2021 06:56:27
Build Host  : nnspidt005.inn.intel.com
Relocations : /opt/intel 
Packager    : http://www.intel.com/software/products/support
Vendor      : Intel Corporation
Summary     : Intel(R) DPC++/C++ Pro / Fortran Compiler Runtime Shared Files
Description :
Standards driven high performance cross architecture compiler and high performance C++ CPU focused compiler
/opt/intel
/opt/intel/oneapi
/opt/intel/oneapi/compiler
/opt/intel/oneapi/compiler/2022.0.1
/opt/intel/oneapi/compiler/2022.0.1/linux
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libcilkrts.so
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libcilkrts.so.5

It says that the build date is December 15th.  So, I'm not accessing the latest version of the compiler.

As per instructions in the section: 

Set Environment Variables for CLI Development
of the Get Started guide at 
I included the line 
source /opt/intel/oneapi/setvars.sh
in my local .bash_profile file.
Unless the procedure has changed?
 

0 Kudos
rudi-gaelzer
New Contributor I
3,127 Views

@Barbara_P_Intel wrote:

Can you be more specific about "still don't have access to the 2022.0.0 version of oneAPI"?  What are you trying to do?

 


Well, I'm trying to access the latest version of the classic Fortran compiler from the terminal.

As I wrote above, I'm running Fedora Linux in my box and using the dnf system to update the OneAPI suite.

This is the listing of the installed versions of the compiler:

rudi@landau|intel64>dnf list installed *intel*fortran*
Installed Packages
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.2.0.x86_64            2021.2.0-610              @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.3.0.x86_64            2021.3.0-3350             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2021.4.0.x86_64            2021.4.0-3561             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.0.x86_64            2022.0.0-3623             @OneAPI
intel-oneapi-compiler-dpcpp-cpp-classic-fortran-shared-runtime-2022.0.1.x86_64            2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran.x86_64                                                      2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-2021.2.0.x86_64                                             2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-2021.3.0.x86_64                                             2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-2021.4.0.x86_64                                             2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-2022.0.0.x86_64                                             2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-2022.0.1.x86_64                                             2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-common-2021.2.0.noarch                                      2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-common-2021.3.0.noarch                                      2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-common-2021.4.0.noarch                                      2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-common-2022.0.0.noarch                                      2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-common-2022.0.1.noarch                                      2022.0.1-3633             @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.2.0.x86_64                                     2021.2.0-610              @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.3.0.x86_64                                     2021.3.0-3350             @OneAPI
intel-oneapi-compiler-fortran-runtime-2021.4.0.x86_64                                     2021.4.0-3561             @OneAPI
intel-oneapi-compiler-fortran-runtime-2022.0.0.x86_64                                     2022.0.0-3623             @OneAPI
intel-oneapi-compiler-fortran-runtime-2022.0.1.x86_64                                     2022.0.1-3633             @OneAPI

As you can see, there are 5 versions installed.  In particular the latest 2022.0.0 and 2022.0.1 versions.

However, if I verify the version I have access to I get:

rudi@landau|intel64>ifort -V
Intel(R) Fortran Intel(R) 64 Compiler Classic for applications running on Intel(R) 64, Version 2021.5.0 Build 20211109_000000
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

The build date is November 09, 2021.

OTOH, if I query the latest version of the compiler:

rudi@landau|intel64>rpm -qil intel-oneapi-compiler-fortran-2022.0.1-2022.0.1-3633.x86_64
Name        : intel-oneapi-compiler-fortran-2022.0.1
Version     : 2022.0.1
Release     : 3633
Architecture: x86_64
Install Date: seg 20 dez 2021 14:55:39
Group       : Intel® Fortran Compiler & Intel® Fortran Compiler Classic 2022.0.1 for Linux* for Intel(R) 64
Size        : 137828743
License     : Copyright Intel Corporation.
Signature   : RSA/SHA256, qua 15 dez 2021 06:44:34, Key ID acfa9fc57e6c5dbe
Source RPM  : intel-oneapi-compiler-fortran-2022.0.1-2022.0.1-3633.src.rpm
Build Date  : qua 15 dez 2021 06:43:23
Build Host  : nnspidt005.inn.intel.com
Relocations : /opt/intel 
Packager    : http://www.intel.com/software/products/support
Vendor      : Intel Corporation
Summary     : Intel® Fortran Compiler & Intel® Fortran Compiler Classic 2022.0.1 for Linux* for Intel(R) 64
Description :
Standards driven high performance CPU and GPU compiler and high performance Fortran CPU focused compiler
/opt/intel
/opt/intel/oneapi
/opt/intel/oneapi/compiler
/opt/intel/oneapi/compiler/2022.0.1
/opt/intel/oneapi/compiler/2022.0.1/linux
/opt/intel/oneapi/compiler/2022.0.1/linux/bin
/opt/intel/oneapi/compiler/2022.0.1/linux/bin-llvm
/opt/intel/oneapi/compiler/2022.0.1/linux/bin-llvm/xfortcom
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/fpp
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/ifx
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/fortcom
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/fpp
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort.cfg
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/foriosdef.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ieee_arithmetic.modintr
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ieee_exceptions.modintr
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ieee_features.modintr
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifcommonalloc.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifcore.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifestablish.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/iflport.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/iflposix.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifport.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifport_types.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/ifposix.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/iso_c_binding.modintr
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/iso_fortran_env.modintr
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/omp_lib.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/include/intel64/omp_lib_kinds.mod
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/for_main.o
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libifcore.a
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libifcore_pic.a
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libifcoremt.a
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libifcoremt_pic.a
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libifport.a
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/locale
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/locale/en_US
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/locale/en_US/diagsf.cat
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/locale/en_US/helpf.cat
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/locale/en_US/ifcore_msg.cat
/opt/intel/oneapi/compiler/2022.0.1/linux/lib
/opt/intel/oneapi/compiler/2022.0.1/linux/lib/libfortran-target.o

The build date is December 15th.

However:

rudi@landau|intel64>which ifort
/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort

Seems to be correct.  Does it mean that I'm accessing the latest version after all?

0 Kudos
Barbara_P_Intel
Moderator
3,118 Views

These version numbers with oneAPI 2022 are going to drive us all nuts!!

The latest version of the Intel Fortran Compiler Classic (ifort) that is part of oneAPI 2022.1.x is

 

$ ifort --version
ifort (IFORT) 2021.5.0 20211109
Copyright (C) 1985-2021 Intel Corporation.  All rights reserved.

 

Yes, it is 2021.5.0.  The components including the compiler follow semantic versioning. Since the updates to ifort did not break the API/ABI compatibility, the major number did not change.  Read this article about Intel oneAPI Semantic Versioning.

The build date of the compiler is older than the build date of the package because it take some time to assemble all the components and make sure they work well together.

And the version of Intel Fortran Compiler (ifx) is

$ ifx --version
ifx (IFORT) 2022.0.0 20211123
Copyright (C) 1985-2021 Intel Corporation. All rights reserved.
Reply