I attempted to install Intel® Parallel Studio XE Cluster Edition for Windows (update 4) on a Windows 10 machine but it wouldn't accept our (Linux) floating licence server settings -- which have worked fine for the last five years. This seems to be because we're updating from 2013 to 2017 and we need a newer version of the server software.
I've installed Intel Software License Manager for Linux from
# ./lmgrd -v
lmgrd v18.104.22.168 build 201886 x64_lsb - Copyright (c) 1988-2017 Flexera Software LLC. All Rights Reserved
I downloaded a 2-user floating XE-Composer C++ license file configured for this server. The license file includes 'Comp-CW'
At the Windows end I've downloaded a client-for-floating-server XE-Composer C++ license file (which contains a 'SERVER' line), using Intel Software Manager 'Licenses' tag
But icl.exe says 'Error: A license for (Comp-CW) could not be found.'
> set FLEXLM_DIAGNOSTICS=3
C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2017.4.210\windows\bin\intel64>icl.exe
FlexNet Licensing checkout error: No such feature exists.
License path: C:\Program Files\Common Files\Intel\Licenses;C:\Program Files (x86)\Common Files\Intel\Licenses\XXXX_XXXXXXXX_636314038576347699.lic;C:\PROGRA~2\INTELS~1\COMPIL~1.210\windows\bin\intel64\*.lic;
FlexNet Licensing error:-5,412
For further information, refer to the FlexNet Licensing documentation,
available at "www.flexerasoftware.com".
If I stop the Linux license server, icl.exe error changes:
Error: A license for Comp-CW is not available now (-15,10,10061)
A connection to the license server could not be made.
-- a brief web search suggests that the problem is server version related; but this is the only Linux-based licensing server you provide. What to do ?
And the answer is...
I had changed the existing startup rc script /etc/flexlm/lmgrd.rc to run the newer licence server:
/opt/intel/licenseserver/2.5.1.009/lmgrd -c /etc/flexlm/server.lic
which starts INTEL -- the old one in /etc/flexlm, not the new one in the same directory as lmgrd.
lmgrd. fwiw. should not be using the current directory or path to find INTEL, it should infer it from /proc/<pid>/exe