The following info will provide assistance to setup your FLEXlm server.
NOTE: FLEXlm licensing is only applicable for Altia Design 12.4 and earlier products. Altia Design 13.0 and newer products use a completely different licensing mechanism.
NOTE: Since FLEXlm is a third-party tool, Altia cannot support it directly. Also, some/many FLEXlm problems arise from internal IT/network/firewall configurations that Altia cannot assist with.
NOTE: Due to our knowledge base search history, we would like to clarify that the spelling is with an L, not an i, so we added this sentence to make sure searches for FLEXim and FLEXIm still end up here at the FLEXlm or flexlm support article.
List of topics in this article:
- Required Files for Altia FLEXlm floating license setup and usage
- Please note VERY IMPORTANT TIPS
- Introduction to an Altia floating license file
- Configuring the Altia FLEXlm Server software as a Windows Service on PC Windows
- Please note VERY IMPORTANT TIPS
- Troubleshooting
- Please not each of the VERY IMPORTANT TIPS
- Troubleshooting: Still having trouble with lmgrd_vista.exe running?
- Troubleshooting: How to test if a client computer can correctly access the Altia license server software on the server computer
- Troubleshooting: How to release a license that is checked out by a computer that lost its network connection
- Troubleshooting: What happens when the Altia software "license" folder contains multiple license files?
- Toubleshooting: Does it seem like Altia Design is not finding the license file(s) in its "license" folder?
- About License Borrowing
- Please note the VERY IMPORTANT TIPS FOR BORROWING
Required Files for Altia FLEXlm floating license setup and usage
In a standard Altia Design software installation, there is a folder named "flexlm" and it has these files:
- ALTIALMD.exe (Altia FLEXlm vendor daemon)
- enduser.pdf (An end-user guide provided by FLEXlm)
- lmgrd.exe (Altia FLEXlm lmgrd for Windows XP)
- lmgrd_vista.exe (Altia FLEXlm lmgrd for Windows Vista/7/8/10 and Server 2008 or newer)
- lmtools.exe (Altia FLEXlm LMTOOLS for Windows XP)
- lmtools_vista.exe (Altia FLEXlm LMTOOLS for Windows Vista/7/8/10 and Server 2008 or newer)
- lmutil.exe (Altia FLEXlm utililty program)
- README.txt (Altia instructions for setting up a server)
- startflexlm.bat (A sample script for starting the server for test purposes)
NOTE: It is best to take the contents of this folder and copy them to the new server computer. Or, if the server computer has Altia software installed, then these files are already on the server computer.
VERY IMPORTANT TIPS:
- Only use an Altia version of the lmgrd program from the Altia software installation "flexlm" folder. On Windows Vista/7/8/10, only use lmgrd_vista.exe from the "flexlm" folder. On Windows XP, only use lmgrd.exe from the "flexlm" folder. Other versions usually do not work correctly with Altia's ALTIALMD process.
- Only use an Altia version of the lmutil program: On Windows, only use lmutil.exe from the Altia software installation "flexlm" folder. The lmutil program is a FLEXlm command line utility for checking server status and borrowing. Other versions usually do not work correctly with Altia's ALTIALMD process. A possible error from lmutil.exe when using the wrong version is: No socket connection to license server manager. (-7,10015)
Introduction to an Altia floating license file
When lmgrd_vista.exe (used on Windows Vista/7/8/10) or lmgrd.exe (used on Windows XP) starts, it opens the license (.lic) file that has been provided as a command line option. An Altia floating license file has these 3 lines at the beginning.
NOTE: If you DO NOT see these 3 lines (but with info that matches your server) at the start of your lic file, you have a node-locked license and will need to contact support@altia.com to inquire about getting a lic file for floating licenses. This may have some commercial impact, depending upon what your organization purchased from Altia.
SERVER MSPM1BLIC04 0050563ffffe 5057
VENDOR ALTIALMD
USE_SERVER
The 1st line should always start with the argument SERVER
The 2nd argument on the 1st line (MSPM1BLIC04 in the example) is the server computer's name or it can be the server's IP address (e.g., 1.2.3.4). This field must be modified to match the server name or its IP address if the license file was provided by Altia with a default name. It should be the name or IP address of the server computer as it is known on the network so that other computers can find it. To test if another computer can reach the server computer using the specified name, open a command prompt window on the other computer and issue a ping command similar to: ping -4 MSPM1BLIC04
The 3rd argument on the 1st line is the server computer's hostid (typically its MAC address or mulitple MAC addresses if the computer has multiple network interface cards). This field is set by Altia when the license file is created. If it needs to be changed, please submit a support ticket identifying the correct hostid for this field. To determine a server computer's hostid, run the lmtools_vista.exe program on the server computer and click the System Settings tab. The Ethernet Address field contains the computer's MAC address hostid(s) which you can provide to Altia (for example copy/paste into a support ticket).
The 4th argument on the 1st line is the TCP/IP port used for communication between the license server daemon process and client computers running Altia products. It must be a port number not used by any other application running on the server computer. The default 5057 has been found to work in almost all situations. Change it if it is known to conflict with the TCP/IP port number used by another software application on the server computer or the firewall only allows a TCP/IP port number from a fixed range.
The 2nd line tells lmgrd_vista.exe or lmgrd.exe the name of the vendor daemon. On Windows, always use the name ALTIALMD. This name starts the Altia vendor daemon program altialmd.exe. Every vendor, such as Altia, has its own daemon. The vendor daemon communicates with the server daemon on a random TCP/IP port by default. This may cause problems for systems with only a fixed set of TCP/IP ports made available through the firewall. To force ALTIALMD to a fixed port, change the VENDOR line to something like:
VENDOR ALTIALMD port=5060
The 3rd line is always USE_SERVER
Other lines in the license file are license keys for specific Altia products. Do not modify these lines. Do not add a line below an existing line that ends with a backward slash (\) because it indicates that the next line is a continuation of the current line. For example, the following lines must be together:
INCREMENT altia_design ALTIALMD 3.0 31-may-2016 1 \
SUPERSEDE ISSUED=27-apr-2015 \
SIGN="03E9 70A0 5C12 822F 9369 FB3F 34DB 24A1 32DA BD38 A900 \
BB2D 21A8 400A 6AE5 8D09 9C25 984F 43A3 901E DE72"
Use a # at the beginning of a line to write a comment (but don't break up a set of license key lines with a comment otherwise they will stop working).
Configuring the Altia FLEXlm Server software as a Windows Service on PC Windows
Please be SURE to carefully follow all of the steps below to configure your flexLM server (95% of FLEXlm problems arise from not following these steps, or not having the proper type of lic file):
To configure the Altia FLEXlm Server as a Windows Service on the PC Windows computer designated as the license server machine, you must have Administrator privileges. Perform the following steps:
1. On Windows Vista/7/8/10 (or Server 2008 or newer), execute lmtools_vista.exe as
Adminstrator (right click on lmtools_vista.exe and choose the Run as administrator
option) to start the LMTOOLS program.
Only on Windows XP, execute lmtools.exe to start the LMTOOLS program.
2. In the "Server/License File" tab, click the "Configuration using
Services" radio button and then click the "Config Services" tab.
3. In the "Service Name" field, type a name for the service that you
want to define. For example:
Altia FLEXlm Service
4. In the "Path to the lmgrd.exe file" field, enter or browse to
lmgrd_vista.exe for Windows Vista/7/8/10 or Server 2008 or newer
(choose lmgrd.exe only for Windows XP).
For example, if the computer is running Windows 10 and Altia Design
is installed in "c:\usr\altia", enter or browse to:
c:\usr\altia\flexlm\lmgrd_vista.exe
VERY IMPORTANT TIPS:
- Run lmgrd_vista.exe for Windows Vista/7/8/10 or Server 2008 or newer.
- Only on Windows XP, run lmgrd.exe. It does not run correctly on newer Windows versions.
- On Windows, only use lmgrd_vista.exe or lmgrd.exe from the Altia software installation "flexlm" folder. Other versions usually do not work correctly with Altia's ALTIALMD process.
- When the service starts (starting the service is described in the upcoming steps), there will be two lmgrd_vista.exe processes running (as viewed in the Task Manager when it is showing running processes from all users). This is the expected behavior when using a FLEXlm lmgrd version 10.8 and higher as required for starting as a service on Windows Vista/7/8/10/etc. When the lmgrd_vista.exe executable starts, it checks to see if it is starting as a service. If it is starting as a service, it spawns another lmgrd_vista.exe process. This results in two lmgrd_vista.exe processes.
5. In the "Path to the license file" field, enter or browse to the
FLEXlm license file for this license server. For example:
c:\usr\altia\license\flexlm.lic
6. In the "Path to the debug log file" field, enter or browse to the
debug log file that this license server should write. Prefixing the debug
log file name with the + character appends logging entries. Use a
.txt extension to open the file easily in Notepad. For example:
+c:\usr\altia\flexlm\debug.txt
7. Check the "Use Services" box. Also check the "Start Server at
Power Up" box if the new service should start automatically on system
boot. If the "Start Server at Power Up" box is not checked, the
service must be started manually from LMTOOLS or from the Windows
Services panel each time the system restarts.
8. Click the "Save Service" button to save the new service.
9. You can use LMTOOLS to start the new server this first time.
Click the "Start/Stop/Reread" tab and press the "Start Server"
button. Starting and Stopping the service is also possible from
the Windows Services panel.
10. To start, stop, or force the service to reread the license file
at a later time, just execute "lmtools.exe" for a Windows XP
computer or "lmtools_vista.exe" for a Windows Vista/7/8/10/etc.
computer to start LMTOOLS.
Click the "Configuration using Services" radio button in the
"Service/License File" tab and highlight the service's name from
the available list. Switch to the "Start/Stop/Reread" tab and
choose an operation to perform.
Complete information about FLEXlm and more information about LMTOOLS
is available from the "FLEXlm End Users Guide". Open "enduser.pdf"
in Acrobat Reader to view it.
Finally, ensure you have copied your lic file to both:
1) The folder location on the server computer where you pointed LMTOOLS to find the lic file
2) Each installation of Altia Design or Altia PhotoProto (on the server computer or other computers). For example:
Altia Design:
C:\usr\altia{version}Build{number}\license
Altia PhotoProto:
C:\Program Files (x86)\Altia\PhotoProto\License
Troubleshooting
In this trouble-shooting section, we only refer to lmgrd_vista.exe and lmtools_vista.exe under the assumption that most servers are Windows Vista/7/8/10 or Server 2008 or newer and should be using lmgrd_vista.exe as well as lmtools_vista.exe to configure the service.
If the lmgrd_vista.exe is not able to start or cannot run altialmd.exe, there could be several reasons:
1. The SERVER line has the wrong server computer name or the wrong hostid (which is usually a MAC address).
2. The SERVER, VENDOR, or USE_SERVER line is missing.
3. The license keys in the license file have expired.
4. The lmgrd_vista.exe is not Altia's version of lmgrd_vista.exe v11.6.
5. The altialmd.exe is not in the same folder as the lmgrd_vista.exe. Both programs must be in the same folder.
3. There is a firewall stopping the server daemon or vendor daemon from using their TCP/IP ports.
The Altia FLEXlm server software should be configured to write to a log file. Open the log file in just a simple text editor such as Notepad to see what might be the cause of the problem. The log file is specified when using lmtools_vista.exe to configure the server as a Windows service. The debug log file is set from the "Config Services" tab by setting the "Path to the debug log file" field. If the server is not being set up as a Windows service, then command line options are used when starting lmgrd.exe to specify the log file as in: -l debug_log_file_path.
If you are running the Altia FLEXlm server as a Windows service, the typical approach is to use the lmtools_vista.exe program to set this up. The earlier instructions explain how to do this. It is the best practice to configure this service to use Altia's lmgrd_vista.exe and the license (.lic) file and altialmd.exe should be in the same folder as lmgrd_vista.exe.
It is also Altia's experience that lmtools_vista.exe is not so great at stopping and starting the service. It works better to go to the Windows Services panel (under Administrative Tools in the Windows Control Panel) to start/stop the service.
VERY IMPORTANT TIP:
It is Altia's experience to only use an Altia version of lmgrd_vista.exe or lmgrd.exe from the Altia software installation "flexlm" folder. Other versions of the lmgrd program may not interface correctly to Altia's ALTIALMD process. Please check the output from "lmutil.exe lmstat -c <license_file_name.lic>" to confirm that it shows something like this:
XXXXXXXXXX: license server UP <MASTER> "a version number"
Vendor daemon status <on XXXXXXXXXX>:
Where "a version number" is v11.6 for lmgrd_vista.exe (on Windows Vista/7/8/10 and Server 2008 or newer) or v9.2 for lmgrd.exe (on Windows XP). If the version number shows differently, it indicates the license server program is not an Altia version of lmgrd_vista.exe or lmgrd.exe. Also be sure to use the Altia version of lmutil.exe. A possible error from lmutil.exe when using the wrong version is: No socket connection to license server manager. (-7,10015).
Troubleshooting: Still having trouble with lmgrd_vista.exe running?
Start lgmdr_vista.exe from a Command Prompt window like this:
lmgrd_vista.exe -z -c license_file.lic
This removes all possible issues with starting lmgrd as a service. The output from this command often yields very good information.
Troubleshooting: How to test if a client computer can correctly access the Altia license server software on the server computer
1. Open a Command Prompt window on the client computer. In the Command Prompt window, change directory (cd) to the Altia Design "flexlm" folder like this:
> C:
> cd \usr\altia{version}Build{number}\flexlm
2. In the Command Prompt window, verify the name of the license files in the license folder like this:
> dir ..\license
3. If the new license file is in the license folder, the dir command should show the file name as:
CompanyName.Person_Name.Date.expiresDate.lic
4. In the Command Prompt window, execute this command. Change the license file name if necessary:
> lmutil lmstat -a -c ..\license\CompanyName.Person_Name.Date.expiresDate.lic
5. The command from step 6D should report on the available licenses from the server. Something like this:
lmutil - Copyright (c) 1989-2003 by Macrovision Corporation. All rights reserved.
Flexible License Manager status on Thu 12/29/2016 09:36
[Detecting lmgrd processes...]
License server status: 5057@your_server_name_here
License file(s) on your_server_name_here: C:\your_path_here\CompanyName.Person_Name.Date.expiresDate.lic
your_server_name_here: license server UP (MASTER) v11.6
Vendor daemon status (on your_server_name_here):
ALTIALMD: UP v9.2
Feature usage info:
(list of your licensed products....an example list is below)
Users of altia_design: (Total of 12 licenses issued; Total of 0 licenses in use)
Users of deepscreen_1001: (Total of 1 licenses issued; Total of 0 licenses in use)
Users of deepscreen_10010991: (Total of 1 licenses issued; Total of 0 licenses in use)
Users of deepscreen_1081: (Total of 1 licenses issued; Total of 0 licenses in use)
Users of deepscreen_10810991: (Total of 1 licenses issued; Total of 0 licenses in use)
Users of connection_991: (Total of 12 licenses issued; Total of 0 licenses in use)
Using steps 1 through 5 above, you can both confirm that the client PCs can properly access the server, but also get a count of the total licenses in use. Please see below if the count seems inaccurate.
Troubleshooting: How to release a license that is checked out by a computer that lost its network connection
Altia uses a heartbeat message to check if the server is still alive. This is part of the FLEXlm software. Altia sends the heartbeat message every 60 seconds.
If the connection between Altia and the license server computer goes down between heartbeat messages and comes back up before the next heartbeat, Altia’s experience is that there is no problem.
If the connection is down when the heartbeat message is sent, that’s a problem and the license will not release when Altia exits. The license server software keeps the license checked out for 2 hours.
One workaround is to shut down and restart the server, but sometimes this is not possible.
Use the following steps from the client computer to release the license gracefully.
VERY IMPORTANT TIP:
- In the steps below, only use an Altia version of the lmutil program: On Windows, only use lmutil.exe from the Altia software installation "flexlm" folder. Other versions usually do not work correctly with Altia's ALTIALMD process. A possible error from lmutil.exe when using the wrong version is: No socket connection to license server manager. (-7,10015).
For example, if Altia Design is installed in C:\usr\altia11Build783, do:
1. Open a Command Prompt window.
2. Change to the Altia Design "flexlm" folder with the command:
cd C:\usr\altia11Build783\flexlm
3. Execute "lmutil" for the lmremove operation. The usage is:
lmutil lmremove -c licfile feature user host display
OR:
lmutil lmremove -c licfile -h feature host port handle
4. To determine the "feature" and "user" and "host" and "display"
to pass to lmremove, the lmstat operation is helpful as in:
lmutil lmstat -c licfile -f feature_name
Here is an example:
C:\usr\altia11Build783\flexlm> lmutil lmstat -c ..\license\flexlm.lic -f altia_design
John Doe johndpc johndpc (v2.0) (johndpc/5057 201), start Mon 11/29 14:43
Jane Doe janed1 janed1 (v2.0) (janed1/5057 102), start Mon 11/29 14:51
C:\usr\altia11Build783\flexlm> lmutil lmremove -c ..\license\flexlm.lic altia_design "John Doe" johndpc johndpc
In the above example, the feature is altia_design, the user is "John Doe",
the host is johndpc, and the display is johndpc. For a complete description
of the lmremove operation, open the document enduser.pdf and see
section 7.10 (page 90).
Troubleshooting: What happens when the Altia software "license" folder contains multiple license files?
Altia software checks the .lic files in alphabetical order. If a floating license file has a name "a.lic", another floating license file has a name "b.lic", and Altia Design is able to check-out its altia_design feature from the license server machine identified in "a.lic", it will stay connected to that license server machine.
For example, if the Altia Design session found a floating altia_design feature license in "a.lic" and it now needs to check-out a 3D model license, it will only try to check-out a floating 3D model license from the server machine associated with the "a.lic" license file. If that machine does not have a 3D model license available, check-out will fail. Altia Design will not attempt to connect to the "b.lic" license server machine because it is already connected to the "a.lic" license server machine for the altia_design license. It is a little different for DeepScreen license check-out because the check-out is from a different process (the code generator executable). So if it has no luck checking out a deepscreen feature from the license server machine identified in "a.lic", it should try "b.lic" and so on.
If the "b.lic" file contains node locked licenses, the Altia software will read "b.lic" for additional check-outs even if the Altia software is already connected to a license server machine for the altia_design feature.
In summary, Altia software can only communicate with 1 license server machine per session, but it can read any number of .lic files for node locked licenses.
Toubleshooting: Does it seem like Altia Design is not finding the license file(s) in its "license" folder?
If Altia Design is unable to start even though you are sure the "license" folder has a working .lic license file. Or, Altia Design starts, but it cannot check out some expected features (e.g., a DeepScreen code generator), FLEXlm might be finding the wrong license file in a different installation of Altia software on the same computer. Use the following steps to troubleshoot and resolve this issue:
- It is possible that the computer's registry has special knowledge of a license file in another Altia software installation folder. This can happen if you previously started a different Altia product executable as administrator.
- Start regedit as Administrator (of course, be careful!).
- Browse to the registry folder Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\FLEXlm License Manager. If there is a ALTIALMD_LICENSE_FILE entry, highlight it and then delete it.
- Restart the Altia product executable. If you are still having trouble, it is probably operator error. Most often, it is because you are actually starting an Altia product executable that is in a different installation tree from the "license" folder containing the .lic file. Another possibility is that you have the ALTIAHOME environment variable set. This forces all Altia Design sessions to look at %ALTIAHOME%\license for a license files. Please never, never set the ALTIAHOME environment variable!
About License Borrowing
If a feature in the license file has a BORROW[=hours] option, it can be borrowed from the server by a client computer for some number of hours. If no hours number is specified, the default is the maximum borrow time of 168 hours (7 days). When a license is borrowed by a client computer, it can be used when the client computer does not have network access to the Altia FLEXlm server computer.
For instructions on how to borrow a license, please read the Altia software installation "flexlm\README.txt" file. For example, if Altia Design is installed in c:\usr\altia, please read the file:
c:\usr\altia\flexlm\README.txt
After opening the file, search for the word: borrow
VERY IMPORTANT TIPS FOR BORROWING:
- Only use Altia's version of lmtools.exe from the Altia software installation "flexlm" folder for borrowing actions from the Borrowing tab.
- DO NOT use lmtools_vista.exe from the Altia "flexlm" folder. It does not function correctly for borrowing even if the computer is Windows Vista/7/8/10.
- DO NOT use a different version of lmtools.exe from a different software application. Only use the version from the Altia software installation "flexlm" folder. Other versions usually do not work correctly with Altia's ALTIALMD process.
- If you are using lmutil.exe to perform borrowing actions from a script or Command Prompt window command line:
- The lmutil.exe program has an lmborrow option to perform all of the actions available from the Borrowing tab of lmtools.exe. Just execute lmutil.exe in a Command Prompt window to see a usage summary for each of its options.
- DO NOT use a different version of lmutil.exe from a different software application. Only use the version from the Altia software installation "flexlm" folder. Other versions usually do not work correctly with Altia's ALTIALMD process. A possible error from lmutil.exe when using the wrong version is: No socket connection to license server manager. (-7,10015).