PGI Installation and Licensing Questions

Which releases of PGI compilers work with each Linux distribution?

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


Which releases of PGI compilers work with each Windows version?

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

PGI Visual Fortran

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

What type of license keys are available?

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.


What is the hostid?

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.


What things can change the hostid?

On Linux, among the things that can change the hostid, the following are the most common:


How do i know if the linux hostid has changed, and what should i do then?

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.


If the hostid has not changed and the license manager fails, what next?

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.


Okay, the simple things check out, what next?

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.

Runtime Messages

Error Message

/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.


Error Message

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.


Error Message

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 lmgrd
or
$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.


Error Message

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


Error Message

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/pghostid
and seeing if it agrees with the same style of hostid listed in the license file.


Error Message

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.


Error Message

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.


Messages in the lmgrd logfile

Problem When I look at the log created by lmgrd, I see messages that look like this:

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 recommended
What 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 ...


Problem

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/pgroupd
The 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.


Problem

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.


Problem

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.


Other problems

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/S90lmgrd
to
ln -s /etc/rc.d/init.d/lmgrd /etc/rc.d/rc3.d/S90lmgrd
and reboot.


Problem

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 lmhostid
I 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.


Problem

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.dat
Or, 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:

For Linux, the FLEXlm hostid uses the Ethernet address of the network card.


Problem

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.


Problem

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 7496
The 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.


Problem

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.


Problem

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.


Problem

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=220
If 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\220
You 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.


Who do I contact with license questions?

Email questions about your license status, how to generate new keys, and how to get your original order acknowledgment to PGI License Support.


Where can I find my PIN?

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.


How do I create/delete/move a license?

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.