Each release of Linux changes many things, primarily the glibc libraries, the locations of files and headers for gcc, and changes to how executables are built. As a result, the PGI compiler install process has to adjust with each release, and the code shipped needs to be updated or expanded. Most compiler releases will be compatible with previous Linux versions existing at that time, though we do change the oldest release we support as the releases proceed.
Here are the PGI compiler releases and the versions of Linux they work with. Note, as is commonly done, we only update the most current release for a new version of Linux. The Linux version involved comes with a specific glibc and gcc version. If you use the versions that are bundled as part of the development tools for that Linux release, and they match another supported release below, then your installation will probably succeed. Not all versions of gcc/glibc can work with any linux release/kernel, however, so any a custom combination of Linux with gcc tools and libs should not be too different from the bundled release.
Here is a table of the Releases available and how to bring them up to their most up-to-2date version. Be sure to add any patches after the latest version is downloaded and installed.
| Release | Linux Releases Verified to Install | Latest Version | Notes |
|---|---|---|---|
| 7.1 |
32-bit - Red Hat 9.0, and RHEL 3.0/4.0/5.0,
SuSE 9.0/9.1/9.2/9.3/10.0/10.1/10.2/10.3, SLES 9/10, Fedora Core 4/5/6/7 64-bit - SLES 9/10, SuSE 9.0/9.1/9.2/9.3/10.0/10.1/10.2/10.3, RHEL 3.0/4.0/5.0, Fedora Core 4/5/6/7 | 7.1-6 | See new release page |
| 7.0 |
32-bit - Red Hat 7.3/8.0/9.0, and RHEL 3.0/4.0/5.0,
SuSE 8.0/8.1/8.2/9.0/9.1/9.2/9.3/10.0/10.1/10.2, SLES 9/10, Fedora Core 2/3/4/5/6 64-bit - SuSE SLES 8 SP2, SLES 9/10, SuSE 9.0/9.1/9.2/9.3/10.0/10.1/10.2, RHEL 3.0/4.0/5.0, Fedora Core 2/3/4/5/6 (AMD64, Xeon EM64T) | 7.0-7 | See archive page |
| 6.2 |
32-bit - Red Hat 7.3/8.0/9.0, and RHEL 3.0/4.0,
SuSE 8.0/8.1/8.2/9.0/9.1/9.2/9.3/10.0/10.1, SLES 9/10, Fedora Core 2/3/4/5 64-bit - SuSE SLES 8 SP2, SLES 9/10, SuSE 9.0/9.1/9.2/9.3/10.0/10.1, RHEL 3.0/4.0, Fedora Core 2/3/4/5 (AMD64, Xeon EM64T) | 6.2-5 | See archive page |
| 6.1 |
32-bit - Red Hat 7.3/8.0/9.0, and RHEL 3.0/4.0,
SuSE 8.0/8.1/8.2/9.0/9.1/9.2/9.3/10.0, SLES 9, Fedora Core 2/3/4/5, 64-bit - SuSE SLES 8 SP2, SLES 9 SuSE 9.0/9.1/9.2/9.3/10, RHEL 3.0/4.0, Fedora Core 2/3/4/5 (AMD64, Xeon EM64T) | 6.1-6 | None |
| 6.0 |
32-bit - Red Hat 7.3/8.0/9.0, and RHEL 3.0/4.0,
SuSE 8.0/8.1/8.2/9.0/9.1/9.2/9.3, SLES 9, Fedora Core 2/3/4, 64-bit - SuSE SLES 8 SP2, SLES 9 SuSE 9.0/9.1/9.2/9.3.10, RHEL 3.0/4.0, Fedora Core 2/3/4 (AMD64, Xeon EM64T) | 6.0-8 |
SuSE 10 patch required
installed in $PGI |
| 5.2 |
32-bit - Red Hat 7.0/7.1/7.2/7.3/8.0/9.0, and RHEL 3.0,
SuSE 7.1/7.2/7.3/8.0/8.1/8.2/9.0/9.1/9.2, Fedora Core 2/3 64-bit - SuSE SLES 8 SP2, SuSE 9.0/9.1/9.2, RHEL 3.0 (AMD64, Xeon EM64T) | 5.2-4 |
See the 5.2
release page |
| 5.1 |
32-bit - Red Hat 7.0/7.1/7.2/7.3/8.0/9.0
SuSE 7.1/7.2/7.3/8.0/8.1/8.2/9.0 64-bit - SuSE SLES 8 SP2, SuSE 9.0 RHEL 3.0 (AMD64, Xeon EM64T) | 5.1-6 | None added |
| 5.0 |
32-bit RH 7.0/7.1/7.2/7.3/8.0/9.0
SuSE 7.1/7.2/7.3/8.0/8.1/8.2 64-bit SuSE 8.1 (AMD64, Xeon EM64T) |
64-bit 5.0-2
32-bit 5.0-2 |
Missing 64-bit Lapack
RedHat 7.3 libpgthread.so pgprof rebuild |
| 4.1 |
RH 6.0/6.1/6.2/7.0/7.1/7.2/7.3/8.0/9.0
SuSE 6.1/6.2/6.3/7.1/7.2/7.3/8.0/8.1/8.2 |
4.1-2 | 4.1-2 patches |
| 4.0 |
RH 6.0/6.1/6.2/7.0/7.1/7.2/7.3
SuSE 6.1/6.2/6.3/7.1/7.2/7.3/8.0 |
4.0-3 |
4.0-3 patch area
|
| 3.3 |
RH 6.0/6.1/6.2/7.0/7.1/7.2
SuSE 6.1/6.2/6.3/7.1/7.2/7.3 |
3.3-2 |
`cvttsd2si' problem
$SYSTEM problem -g77libs problem 3.3-2 patch area |
| 3.2 |
RH 6.0/6.1/6.2/7.0
SuSE 6.1/6.2/6.3/7.0/7.1 |
3.2-4 |
RH 7.0 patch
3.2-4 patch area |
| 3.1 | Red Hat 5.2/6.0/6.1 | 3.1-4 | 3.1-4 patch area |
| 3.0 | Red Hat 5.2 | 3.0-4 | 3.0-4 patch area |
PGI Workstation and PGI Server for Windows. Versions are added as they become available.
| Release | Windows Versions Verified to Install | Latest Version | Notes |
|---|---|---|---|
| 7.1 |
32-bit - 2000/XP/Server 2003/Vista
64-bit - XP x64/Vista/Server 2003 x64/Compute Cluster Server |
7.1-4 | |
| 7.0 |
32-bit - 2000/XP/Server 2003/Vista
64-bit - XP x64/Vista/Server 2003 x64/Compute Cluster Server |
7.0-7 | See archive page |
| 6.2 |
32-bit - 2000/XP/Server 2003
64-bit - XP x64/Server 2003 x64/Compute Cluster Server |
6.2-5 | See archive page |
| 6.1 | 2000/XP/Server 2003/Windows x64 | 6.1-6 | |
| 6.0 | 2000/XP/Server 2003 | 6.0-8 | |
| 5.2 | XP/2000/NT | 5.2-4 | |
| 5.1 | XP/Me/2000/NT/98 | 5.1-6 |
|
| 5.0 | XP/Me/2000/NT/98 | 5.0-2 |
|
| 4.1 | XP/Me/2000/NT/98 | 4.1-2 | 4.1-2 patch area |
| 4.0 | XP/Me/2000/NT/98 | 4.0-3 | 4.0-3 patch area |
| 3.3 | XP/Me/2000/NT/98 | 3.3-2 |
`cvttsd2si' problem
Win98 'bad parameter' Win2K 'Temp' problem 3.3-2 patch area |
| 3.2 | Me/2000/NT/98 | 3.2-4 | 3.2-4 patch area |
| 3.1 | 2000/NT/98 | 3.1-4 | 3.1-4 patch area |
| 3.0 | NT/98 | 3.0-4 | 3.0-4 patch area |
Versions are added as they become available
| Release | Windows Versions Verified to Install | Latest Version | Notes |
|---|---|---|---|
| 7.1 |
32-bit - XP/Server 2003/Vista
64-bit - XP x64/Server 2003 x64/Compute Cluster Server/Vista PVF requires Microsoft Visual Studio 2005 |
7.1-4 | |
| 7.0 |
32-bit - XP/Server 2003/Vista
64-bit - XP x64/Server 2003 x64/Compute Cluster Server/Vista PVF requires Microsoft Visual Studio 2005 |
7.0-7 | See archive page |
| 6.2 |
32-bit - XP/Server 2003
64-bit - XP x64/Server 2003 x64/Compute Cluster Server PVF requires Microsoft Visual Studio 2005 |
6.2-6 | See archive page |
There are four types of license keys provided with PGI compilers.
The Trial license key acts much like the FLEXlm-style license key, except it also has a time limit, and introduces a time limit in the executable. Codes compiled with a trial license should be recompiled with a permanent or temp license key.
The temp license key will work regardless of FLEXlm running, and does not introduce a time limit.
All other licenses keys are permanent - they never stop working on the version they were generated for, along with versions of the product that were prior in release number to the one licensed.
User-Locked-Node-Locked license keys are restricted to a particular user on the particular hostid. This type is used by those systems that have no network cards (see hostid question) or when a user does not want a license manager daemon running. They are also restricted to one user only, and that user cannot login as some other UID (like 'root').
Node-Locked license keys restrict the use to a particular host and a certain maximum number of concurrent users. They are very useful when a number of users want to share a PGI product.
Floating license keys allow multiple nodes to use the compilers, and only restricts the maximum number of concurrent users across all of the systems.
On Solaris and Windows the hostid is a unique identifier the OS provides for your system that we use to manage our license usage.
On Linux, the hostid is a unique identifier we create for your system ("PGI Style") or it is the Ethernet address of the network card that is configured as device eth0 ("Flexlm Style"). For PGI-style licensing, among the things we use to generate the hostid on linux is your network card id and hostname.
When we say 'network card id' we mean the unique id we can access via TCP/IP of a configured network card -- a computer does not have to be attached to the net, it just needs the network card to be 'configured'.
Whatever license type you use, the hostid the OS provides or the hostid we create each time we run our compilers must not change, or the license validation will fail.
On Linux, among the things that can change the hostid, the following are the most common:
If your license.dat has a HOSTID=PGI=number, run
$PGI/linux86/7.1/bin/pghostid
If your license.dat has a HOSTID=number, run
$PGI/linux86/7.1/bin/lmutil lmhostid
See if the hostid value created agrees with the one found in your license.dat file.
If the hostid does change, then connect to the PGI online key system and create new keys. You can find the necessary username and password needed to connect in the order acknowledgment that you received at the time of purchase. If you do not have an order acknowledgment, then please send mail to PGI License Support and you will be sent your order acknowledgment.
The following applies to Node-Locked and Floating Licenses only. Most problems with running license daemons are relatively minor (although they may not seem like it at the time!) and are easily fixed.
The following checklist tries to eliminate the easy things.
You should see different behavior if you remove or rename the license file. Check to see the LM_LICENSE_FILE is set properly.
/etc/hosts associates one or more hostnames (a long and short name usually) to an IP address. Mkae sure the names and IPA are correct. You should be able to
telnet server
or
rsh server date
or
ssh server date
succesfully from server to itself (for node locked flexlm), or from the compile platform to the license server (for floating licenses).
See the previous section....
set | grep PGI
Will determine if it is properly defined.
(e.g. export LM_LICENSE_FILE=/usr/pgi/license.dat )
setenv | grep LM_LICENSE_FILE
Will determine if it is properly defined.
It must adhere to a specific format -- no extra lines, no linefeeds or returns between 'FEATURE' and '\', no linefeeds or returns between 'VENDOR' and 'ck=num', and only one linefeed or return between the line beginning with 'FEATURE' and the one beginning with 'VENDOR'. The following is an example of a license.dat file
------------------------------------------------not including this # In the SERVER line below, replace 'server' with the # hostname of the computer running the license daemons. # SERVER server 000b6b928414 27000 DAEMON pgroupd FEATURE pghpf-linux86-64 pgroupd 7.100 31-dec-0 1 \ 77024708430E VENDOR_STRING=506669:8 \ HOSTID=000b6b928414 ck=121 FEATURE pgf90-linux86-64 pgroupd 7.100 31-dec-0 1 \ 1BB300764DD9 VENDOR_STRING=506669:8 \ HOSTID=000b6b928414 ck=83 FEATURE pgf77-linux86-64 pgroupd 7.100 31-dec-0 1 \ 41863833B003 VENDOR_STRING=506669:8 \ HOSTID=000b6b928414 ck=111 FEATURE pgcc-linux86-64 pgroupd 7.100 31-dec-0 1 6CE76D08D5B9 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=134 FEATURE pgcpp-linux86-64 pgroupd 7.100 31-dec-0 1 \ 48BD80F18A35 VENDOR_STRING=506669:8 \ HOSTID=000b6b928414 ck=147 FEATURE pghpf-linux86 pgroupd 7.100 31-dec-0 1 A9EEDD6CDB99 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=167 FEATURE pgf90-linux86 pgroupd 7.100 31-dec-0 1 D48A9B076074 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=120 FEATURE pgf77-linux86 pgroupd 7.100 31-dec-0 1 CAD705471A86 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=153 FEATURE pgcc-linux86 pgroupd 7.100 31-dec-0 1 E25292FFC930 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=120 FEATURE pgcpp-linux86 pgroupd 7.100 31-dec-0 1 D53E83E62698 \ VENDOR_STRING=506669:8 HOSTID=000b6b928414 ck=98 FEATURE pgprof pgroupd 7.100 31-dec-0 1 16598A0CC41E \ VENDOR_STRING=506669:8:ws HOSTID=000b6b928414 ck=105 \ TS_OK FEATURE pgdbg pgroupd 7.100 31-dec-0 1 D4F480A5027E \ VENDOR_STRING=506669:8:ws HOSTID=000b6b928414 ck=140 \ TS_OK FEATURE pgdbg-gui pgroupd 7.100 31-dec-0 1 49B9736A023C \ VENDOR_STRING=506669:8:ws HOSTID=000b6b928414 ck=76 \ TS_OK FEATURE pgdbg-linux86-64 pgroupd 7.100 31-dec-0 1 \ 658CB9B05516 VENDOR_STRING=506669:8:ws \ HOSTID=000b6b928414 ck=47 -------------------------------------------------or thisNo extra lines allowed.
DAEMON pgroupd /usr/pgi/linux86/7.1/bin/pgroupd
To be sure, stop them all and restart the license manager.
ps ax | grep lmgrd or $PGI/linux86/7.1/bin/lmutil lmstat ps ax | grep pgroupdIf processes lmgrd and pgroupd are running, kill them off. Then
$PGI/linux86/7.1/bin/lmgrd.rc restart
Macrovision, the vendor of FLEXlm software, maintains an FAQ of commonly-asked questions about FLEXlm.
In addition, here are some typical license manager problems and solutions that might be encountered when using PGI software products.
/usr/pgi/PGIinstall: No such file or directory
Solution
The environment variable LM_LICENSE_FILE must be set to the location of the license file, and license.dat must be there.
LICENSE MANAGER PROBLEM Cannot find license file ... No such file or directory
Solution
The environment variable LM_LICENSE_FILE must be set to the location of the license file, and license.dat must be there.
LICENSE MANAGER PROBLEM cannot connect to license server ... Connection refused.
Solution
This message occurs when the license daemon has not been started. Check to see whether you have started the license daemons as specified in the second section of the INSTALL file.
If you have indeed started the license server, check to make sure it is actually there by running the command
ps ax | grep lmgrdor
$PGI/linux86/7.1/bin/lmutil lmstat
If the license server lmgrd is not running, the file $PGI/flexlm.log may contain details on why lmgrd failed to start. A likely problem is a failure to correctly specify the path to the vendor daemon pgroupd on the DAEMON line.
Error Message
LICENSE MANAGER PROBLEM cannot connect to license server ... Network is unreachable
Solution
The "network is unreachable" message may mean problems with the networking configured on that system. What happens when you run telnet hostname when you're already logged into hostname? If you don't get a login prompt, then either networking has not been configured or has not been configured properly.
LICENSE MANAGER PROBLEM the desired vendor daemon is down
Solution
This message indicates that the pgroupd vendor daemon is down. Look at the last fifty or so lines of the $PGI/flexlm.log logfile and see if the contents appear to match with any of these previously-identified logfile entries
LICENSE MANAGER PROBLEM: Cannot find SERVER hostname in network database
Solution
The hostname that is listed on the SERVER line in the license file was not found in either /etc/hosts or your site's DNS. Almost always, you want that hostname to be a fully-qualified hostname (i.e., host.your.site).
So, either fix the SERVER line in $PGI/license.dat, or the hostname needs to be added to /etc/hosts or the DNS. See your system administrator for details on the latter.
Error Message
LICENSE MANAGER PROBLEM No such feature exists
Solution
This error occurs when you try to run software without a corresponding FEATURE line in the license file. In this case, usually one of two things are true:
Another possibility is that the environment variable LM_LICENSE_FILE is set incorrectly.
Yet another possibility is the license file has been corrupted.
Error Message
LICENSE MANAGER PROBLEM No such feature exists ... Permission denied
Solution
The "permission denied" part of the message leads me to suspect that the license file is not readable by the user running the compilers.
Error Message
LICENSE MANAGER PROBLEM Invalid host
Solution
Typically, this error occurs when one of two things is true:
Most--but not all--license files are nodelocked to a particular system. For instance, if you purchased PGI Workstation and NFS-export the PGI directory to other systems, those other system are not allowed to run the compilers.
For the latter case, you need a new license.
However, there are other possible solutions. If you are using the PGI= hostid scheme, and you don't have a network card, then unfortunately, the PGI= hostid is sensitive to the system's hardware configuration. Have you added or removed any cards recently? If so, that could affect your hostid. Try running the command
$PGI/linux86/7.1/bin/pghostidand seeing if it agrees with the same style of hostid listed in the license file.
LICENSE MANAGER PROBLEM License file does not support this version ... Connection refused
Solution
The error message occurs when there's a mismatch between the software version and the software license.
If you're installing a new release, the most likely problems are
If you're installing a new release, the most likely problem is that LM_LICENSE_FILE is still set to the old license file which takes precedence over the new 15-day temporary license. In that case, either unset LM_LICENSE_FILE or install the permanent license for the new release. If you've done the latter and still get this error, please realize that the license daemon must be restarted in order to read the new license file.
If you have a current software subscription and you have downloaded a new release of PGI software, please be aware that you must generate new license keys specific for that release. Connect to the PGI online key system at http://www.pgroup.com/License and create new keys.
LICENSE MANAGER PROBLEM Invalid (inconsistent) license key
Solution
This error happens when the license file has been changed in such a that invalidates it.
Another possibility is the license file has been corrupted.
Error Message
LICENSE MANAGER PROBLEM Cannot read data from license server
Solution
The error usually indicates some sort of networking problem, or that the license daemon is confused by something.
Error Message
LICENSE MANAGER PROBLEM cannot connect to license server ... no buffer space available
Solution
While logged onto the computer, see if you can 'ping' the system itself or telnet to itself. If you get the same error, then the loopback network interface is either misconfigured or it is missing. It is very unwise to mess with the loopback interface.
Error Message
LICENSE MANAGER PROBLEM User ID jones not found
Solution
This error message happens when the username in the license file cannot be found in /etc/passwd. This typically happens when the user specified the wrong username when installing the software.
In Release 1.7, there was an obscure error in the header files of Linux that caused this problem. In this case, there is no fix available.
Error Message
LICENSE MANAGER PROBLEM product licensed to user named 'jones' but numerical UID (101) didn't match expected UID (100)
Solution
The user with uid 101 is not licensed to use the software. The error will only occur with the PGI= hostid scheme.
18:41:16 (lmgrd) Retrying socket bind (address in use: port 7496) 18:41:23 (lmgrd) Retrying socket bind (address in use: port 7496) 18:41:46 (lmgrd) Retrying socket bind (address in use: port 7496) 18:41:53 (lmgrd) Retrying socket bind (address in use: port 7496) 18:42:16 (lmgrd) Retrying socket bind (address in use: port 7496) 18:42:23 (lmgrd) Retrying socket bind (address in use: port 7496) 18:42:46 (lmgrd) Retrying socket bind (address in use: port 7496) 18:42:53 (lmgrd) Retrying socket bind (address in use: port 7496)What does this mean?
Suggestion
The 'address in use' message indicates multiple instances of the master license daemon lmgrd are running. Only one lmgrd process should be running. Use the ps command to find all the lmgrd processes and kill them. Then start up a single lmgrd.
Problem
I see the following in my $PGI/flexlm.log:
15:27:45 (lmgrd) lmgrd running as root: 15:27:45 (lmgrd) This is a potential security problem 15:27:45 (lmgrd) And is not recommendedWhat is recommended?
Suggestion
This was the subject of a CERT security warning a few years ago.
If the customer wants to change this, they should start the daemon up as another user, e.g., create a user flexlm and then start lmgrd as
su flexlm -c /usr/pgi/linux86/7.1/bin/lmgrd ...
16:54:18 (lmgrd) FLEXlm (v4.1) started on foo.bar.com (IBM RS/6000) 16:54:18 (lmgrd) FLEXlm Copyright 1988-1994, Globetrotter Software, Inc. 16:54:18 (lmgrd) License file: "/usr/local/pgi/license.dat" 16:54:18 (lmgrd) Starting vendor daemons ... license daemon: execl failed: (/usr/pgi/linux86/7.1/bin/pgroupd or /usr/pgi/linux86/7.1/bin/pgroupd/pgroupd) -T foo.bar.com 4.1 3 -c /usr/local/pgi/license.dat
Suggestion
In the license file, there are comments like
# # In the DAEMON line, the location of the pgroupd daemon # may need to be modified. # DAEMON pgroupd /usr/pgi/linux86/7.1/bin/pgroupdThe failed execl above indicates that the path of pgroupd has not been set correctly. See the INSTALL file for details.
Problem
My license daemon fails to run. When I look in $PGI/flexlm.log, I see the following:
21:07:15 (lmgrd) "foo.bar.com": Not a valid server hostname, exiting. 21:07:15 (lmgrd) Valid server hosts are: "zot.bar.com" 21:07:15 (lmgrd) Using license file "/usr/pgi/license.dat"
Suggestion
There is a mismatch between the hostname on the SERVER line in the license file and the actual hostname of the system where you are trying to run the daemon. My experience is that the hostname on the SERVER line must match the output of "uname -n". If this is not the case, then one of the values must be adjusted. It is usually best if the actual hostname of the system is a fully-qualified hostname. There are a variety of ways to effect this with Linux, all depending on the distribution that you are using. See the Linux documentation for details.
My license daemon fails to run. When I look in $PGI/flexlm.log, I see the following:
19:22:13 (lmgrd) FLEXlm Copyright 1988-1996, Globetrotter Software, Inc.
19:22:13 (lmgrd) World Wide Web: http://www.globetrotter.com
19:22:13 (lmgrd) License file: "/usr/pgi/license.dat"
19:22:13 (lmgrd) Starting vendor daemons ...
19:22:13 (lmgrd) Started pgroupd (internet tcp_port 1310 pid 3813)
19:22:13 (pgroupd) Wrong hostid, exiting (expected 0000c9b3f68b,
got 000092969da0).
19:22:13 (lmgrd) Please correct problem and restart daemons
Suggestion
You probably changed your network card. Since the FLEXlm hostid is the Ethernet address, changing the network card also means that your computer has a new Ethernet address.
Simply connect to the online key system at http://www.pgroup.com/License and create new keys. You can find the necessary username and password needed to connect in the order acknowledgment that you received at the time of purchase. If you do not have an order acknowledgment, then please send mail to PGI License Support and you will be sent your order acknowledgment.
Another possibility is multiple network cards.
I see lines like the following in my $PGI/flexlm.log file and I want to know what they mean?
3:22:53 (pgroupd) Vendor daemon can't talk to lmgrd (Cannot connect to license server (-15,12:110) Connection timed out) 3:22:53 (lmgrd) Vendor daemon died with status 241 3:22:53 (lmgrd) Since this is an unknown status, lmgrd will 3:22:53 (lmgrd) attempt to re-start the vendor daemon. 3:22:53 (lmgrd) REStarted pgroupd (internet tcp_port 1048 pid 771) 3:22:53 (pgroupd) Server started on foo for: pgf77-linux86 3:22:53 (pgroupd) pgprof pgdbg 3:23:03 (pgroupd) Vendor daemon can't talk to lmgrd (Cannot connect to license server (-15,12:110) Connection timed out)
Suggestion
Check that the hostname' actual IP address (determined by running /sbin/ifconfig) is the same as listed in /etc/hosts or the site's DNS. If the system contains a network card, then the hostname should not be listed on the 127.0.0.1 line (the localhost or loopback interface).
Another very useful diagnostic is to see whether, when you are logged-on to the system where the license daemon is supposed to run, you can telnet or login to the system from itself. This test exercises the same set of networking protocols that the daemons will use to communicate and when the compiler tries to communicate to the license daemon. Note, some sites disable or remove the ability to telnet. Rsh, ssh, and ftp will all do the same thing, just not as easily. Ping and traceroute are not useful, since they use the ICMP protocol and not TCP, like telnet. If enabled by inetd or xinetd, you could also use the TCP test utilities such as daytime and/or echo.
Another possibility is that you are running ipchains or its kernel 2.4 replacement, netfilter (iptables). Check and see whether the files /etc/sysconfig/ipchains or /etc/sysconfig/ipchains exit. If they do, then please send mail to PGI Technical Support and we will work with you to solve this problem.
When I use the Online License system, I enter my hostid but I get a error that says
Error
Nodelocked, PGI-style hostids must be 26 characters long. Please return to
the previous page and correct this.
Suggestion
You have typed your eight-digit FLEXlm hostid into the first set of input fields, which are labeled
Licensing for Linux86 systems -- PGI-style hostids.Instead, you need to type the FLEXlm hostid into the second set of input fields which are labeled
Licensing for Linux86 systems -- FLEXlm-style hostids.
Problem
I have a license file that requires a license daemon to run, yet when lmgrd starts up, I cannot find a $PGI/flexlm.log file on my system.
Suggestion
You probably have the $PGI directory installed as read-only. This was a bug in the PGI Release 3.0 install script.
Usually, the $PGI directory settings should be 0777 (or 0775, if giving anyone write permission makes you wince), and then chmod a-w $PGI/*.
Problem
I've done everything in the INSTALL notes and I still can't seem to lmgrd to work right. My Linux distribution is Red Hat 6.0.
Suggestion
This might work. Try changing the symlink below
ln -s /etc/rc.d/init.d/lmgrd /etc/rc.d/rc2.d/S90lmgrdto
ln -s /etc/rc.d/init.d/lmgrd /etc/rc.d/rc3.d/S90lmgrdand reboot.
I've done everything in the INSTALL notes and I still can't seem to lmgrd or lmutil to work right. I'm using PGI Release 3.1 and my Linux distribution is a newer one like SuSE 6.4 or Red Hat 7.x.
When I try to run
lmutil lmhostidI get the message
lmutil: Command not found.When I try to start the license daemon by hand, I see the following:
/usr/pgi/linux86/7.1/bin/lmgrd.rc: /usr/pgi/linux86/7.1/bin/lmgrd:
No such file or directory
Suggestion
The license utilities lmgrd, lmutil, and pgroupd included in Release 3.1 unfortunately had a dependency on the now-obsolete C library, libc5. SuSE 6.4 choose not to install this library by default. You can either install the libc5 library, or download glibc2-aware license utilities from ftp://ftp.pgroup.com/pub/flexlm/linux86_glibc2.tar.gz. Install the tarfile into untarring it into $PGI.
A better idea would be to simply upgrade to the latest release.
I have two license files from two different vendors' products. How do I set $LM_LICENSE_FILE to access both products?
Suggestion
If you are using other products managed by FLEXlm and have previously set the environment variable LM_LICENSE_FILE, either incorporate the PGI license keys into your existing license file or issue the following command to append the PGI license file to the definition of LM_LICENSE_FILE, assuming csh:
setenv LM_LICENSE_FILE "$LM_LICENSE_FILE":$PGI/license.datOr, assuming sh or its variants:
LM_LICENSE_FILE=$LM_LICENSE_FILE:$PGI/license.dat export LM_LICENSE_FILE
Problem
I have a three-server license file, and have installed and configured the license daemon on each of the three systems. However, if one of three systems does down, then the license daemon on the other two servers goes down too. What can I do?
Suggestion
In my experience, redundant license servers look interesting in theory but can cause many problems for both users and IT staff. We recommend that out customers use a single license server, preferably on a computer dedicated to administrative functions.
Problem
When I run the command lmutil lmhostid, it returns
lmutil - Copyright (c) 1989-2000 Globetrotter Software
The FLEXlm host ID of this machine is ""
What does that mean?
Suggestion
On computers running Linux, an empty FLEXlm hostid means one of two things:
The computer that is running the license daemon has three network cards. I used the Ethernet address from the public interface which is eth4, but it appears that the license daemon wants to use the Ethernet address of the card which is eth0. How do I fix this?
Suggestion
Unfortunately, on Linux, the Ethernet address that is used as the FLEXlm hostid is the address of the eth0 device. There is no workaround to this.
Problem
I have a PGI Server license. Can users at other machines simply set the $LM_LICENSE_FILE environment variable to my host, e.g.,
export LM_LICENSE_FILE=foo.bar.com
Suggestion
This would not work.
Usually we tell people to copy the license file to whatever systems they are going to use the software. This is the simplest and most straight-forward way to do it.
However, there is a short cut and I just tried it and it works. You can say 'LM_LICENSE_FILE=port@server'. 'port' is the fourth field on the SERVER line. 'server' is the system where the license server is running, and which is the second field on the SERVER line.
I need to change the port which the license daemon lmgrd listens on. How can I do this?
Suggestion
A typical server line looks like this:
SERVER billybob.mysite.com 0090123c30e8 7496The fourth field of the SERVER line is the TCP port. Change that field to the desired value and then restart the license daemon.
For the sake of completeness, the second field is the hostname of the system running the license daemon, and the third field is the Ethernet address of the network interface.
My site has a firewall and I need to be able to set the port on which the license daemons run. How do I do this?
Suggestion
Changing the port that the lmgrd process listens on is covered above.
You can set the port that the vendor daemon pgroupd listens on by adding PORT = number to each DAEMON line. For example,
SERVER billybob.mysite.com 0090123c30e8 28001 ... DAEMON pgroupd /usr/local/pgi/linux86/7.1/bin/pgroupd PORT=28005
Further, the firewall needs to permit access on the above ports.
I recently installed PGI Release 5.1 and generated license keys. In the old license key I had lines for pgCC, but in the new keys I don't. They appear to have been replaced with lines for pgcpp.. This means I cannot use pgCC for releases prior to 5.1. Help!
Suggestion
If you are using pgCC from releases 4.1 or 5.0, you need to download one of the patches below.
The 5.1 license will work correctly with 4.1/5.0 pgCC once these patches are installed.
Help! None of these suggestions seem to work!
Suggestion
It might be a longshot, but I have seen corrupted license files. This usually happens when someone or something introduces invalid characters into the license file. Some MIME-enabled mail agents translate the equals sign ('=') in the license fields to either a 3D or other characters which invalidate the license.
Check the VENDOR_STRING, HOSTID, and ck fields. These lines all have distinct patterns. Examples:
VENDOR_STRING=100000:4:root HOSTID=12345678 HOSTID=PGI=12342E10010012D330093 ck=220If there is a 3D after the equals sign, or other spurious characters, that is a problem. Here are actual examples of corrupted fields:
VENDOR_STRING=3D100013:4:root HOSTID=3DPGI=3D123452E10010012D330093 ck=3D90 VENDOR_STRING^P0013:4:root HOSTID=^@PGI=12342E10010012D330093 ck\220You should also check to see whether there are any spurious equal signs at the end of a line, such as in this example:
FEATURE pgprof pgroupd 3.000 31-dec-0 0 5B081234CC2A4719F438 \
VENDOR_STRING=3D100013:4:root HOSTID=3DPGI=3D000002E10010012D330093 =\
ck=3D202
In the first three examples, the 3D needs to be removed and the license file will probably work. In the last three examples, the license file will have to be resent (or FAXed, if the mail agent is corrupting the license) since it's impossible to determine what was the original data.
Email questions about your license status, how to generate new keys, and how to get your original order acknowledgment to PGI License Support.
When communicating with PGI, please provide your PIN (Personal Identification Number) with your inquiry. Your PIN can be found in your license file. Typically the license file is found at $PGI/license.dat (Linux and Mac OS X) or C:\Program Files\PGI\license.dat (Windows). In the license.dat file, look for
VENDOR_STRING=xxxxxx
where xxxxxx is a six digit number starting with a 1, 5 or 9. This is your PIN. If your file is not in $PGI, look at the location $LM_LICENSE_FILE.
This question applies to those who have purchased a license and have a permanent PIN. If you have a trial license, then you cannot generate a permanent license.
We recommend that you install the software first on the system you are using, or intend to move to, before trying to obtain a license for that system. If you are moving your compilers to a new system, DO NOT remove the compilers from your previous machine until things are working on your new system. Avoid leaving yourself with no working compilers in the event you have temporary license problem during the transfer.
To determine your PIN number as described in the PIN FAQ above.
We have changed the system so that a webuser can now use the single login of email_address/password to both download new software and generate a license for one or several PINs. Go to webuser login site to obtain downloads and new licenses.
If you cannot linked your PIN to your webuser account, send mail to PGI License Support, and provide as much info as you know about the original purchase so we can search. Usually, the name or email address of the purchaser is enough. More info may be needed if you have multiple licenses at your site.
To create a license, you will need a hostid for the device that is managing the license. If you have a workstation license, this is the hostid of the machine you installed the compilers on. If you have a server license, it is the hostid of the license server.
Workstation licenses come in two flavors: FLEXlm and PGI-style. See What is the hostid? for info about how to obtain your hostid before going online.
To move a license from one machine to another, log in to the online key generation system and choose "Delete license key". Then choose "Issue license key". Enter your new hostid and click "Create keys". You can delete and issue new license keys once. If you need to reissue license keys more than once, contact PGI License Support and request a deletion. Once a deletion is completed, you will be able to generate a new license.
We appreciate the effort you have to go through to create or change a license, and we apologize for these extra steps needed to preserve the integrity of our software products.