Common FLEXLM License Log Errors

Below is an explanation of the lmgrd log file errors:

1. Retrying socket bind
This means the TCP number is already in use port number. Almost always, this means the lmgrd is already running, and you've tried to start it twice. Sometimes (rarely) it means that another program is using this TCP port number. The number is listed on the SERVER line in the license file as the last item. You can change the number and restart lmgrd, but do this only if you don't already have an lmgrd running for this license file. This is improved by using the most current lmgrd.


2. License manager: can't initialize: Error -1:Cannot find license file
This means you've started lmgrd on a non-existent file. There's 2 ways to specify the file for lmgrd to use:

-c license-file
LM_LICENSE_FILE environment variable.

In either case, the license specified doesn't exist.


3. Invalid license key Error -8:inconsistent encryption code
This happens for 4 different reasons:

- The license file has been typed in incorrectly (cutting and pasting from email is a safe way to avoid this).
- The license was generated incorrectly. Your license supplier will have to generate a new license if this is the case.
- (Rare): The license vendor changed codes. This is actually an incorrectly generated license, but it may be because the company generating the licenses has, in effect, 2 different kinds of license generators. Again, only the license supplier can resolve this.
- The version of your license file is higher than lmgrd. Upgrade to the newest version of lmgrd.


4. MULTIPLE `vendor-daemon-name' servers running.
There's 2 lmgrd and vendor-daemons running for this license file. Only one process per vendor-daemon/per node is allowed by FLEXlm to run. Sometimes this can happen because the lmgrd was killed with a -9 signal (which should not be done!). The lmgrd was then not able to bring the vendor-daemon process down, so it's still running, although not able to serve licenses. If an lmgrd is killed with a -9, the vendor-daemons also then must be killed with a -9 signal. In general, lmdown should be used. If kill is used, you should use kill without a -9 argument. Using the most current lmgrd will help this problem.


5. Vendor daemon can't talk to lmgrd
This means a pre-v3.0 lmgrd is being used with a v3.0+ vendor daemon. Simply use the latest version of lmgrd (MUST be a version equal to or greater than the vendor daemon version).

(Rare): This can also happen if TCP networking doesn't function on the node where you're trying to run lmgrd.


6. Vendor daemon died with status n...Since this is an unknown status, lmgrd will attempt to re-start the vendor daemon.
Often this is accompanied by printing a port number which increases over and over.
lmgrd tries to start the vendor daemon using the VENDOR line in the license file, which looks like:

VENDOR demo /usr/flexlm/v6.1/platform/demo

The /usr/flexlm/v6.1/platform/demo is a path to a binary, and there's something wrong with either the path or the binary itself. One way to debug this is to run vendor daemon directly, using this path, and the problem then becomes more apparent.


7. Vendor daemon can't talk to lmgrd Error -16,287 on Solaris?
This problem frequently happens on the Solaris operating system having to do with select() and file descriptors set to > 1024.

Start lmgrd from a shell script
The script should look like:

#!/bin/sh
ulimit -n 1024
ulimit -H -n 1024
lmgrd [...]

where [...] is the lmgrd arguments. This resets the limit to 1024 for lmgrd, which resolves the problem.


8. Cannot find SERVER hostname in network database Error -14?
Use the IP address as the hostname. On the SEVER line, substitute the IP address for the hostname.

SERVER IPaddrress hostid port

Also, on each client machine make sure the hosts file (windows directory) contains the server hostname and ipaddress.


9. Duplicate selection mismatch for this feature Error -37?
If you get error -37, then you are using 2 different DUP_GROUP values. The DUP_GROUP values are either set in the application or the license file. You cannot use 2 different values for the same FEATURE. The license server will reject the second value that is requested.

In the debuglog, you will see this error message.

19:44:56 (demo) Feature f1 parameter mismatch - checkout denied (current:
4000, request: 0)19:44:56 (demo) DENIED: "f1" user@company.com
(Duplicate selection mismatch for this feature (-37,350))

If you look at the current and request numbers, this will tell you what DUP_GROUP value you have set for this FEATURE.

For example,
current: 4000 means you have set this value to LM_DUP_NONE
request: 0 means you have set the value to LM_DUP_SITE or zero(0).

The current and request must match.