FlexLM Licensing

BSOE runs a FlexLM license server (license.soe.ucsc.edu) for a number of software suites, including the following:

  • Agilent
  • Altera
  • Cadence
  • COMSOL
  • Geneious
  • IDL
  • Maple
  • MATLAB
  • Mentor
  • Sonnet
  • Synopsys
  • TI Code Composer Studio
  • Xilinx

In order for this software to be able to check out network licenses, your system will need an environment variable that points them to the correct license server address and TCP port number; 27000@license.soe.ucsc.edu.  If you are unable to check out licenses, it is likely that you are either unable to connect to the license server or you do not have the required environment variable set.

Setting your Environment Variables

If your system does not already have the required variables set up, you can add them yourself.

Windows

Windows environment variables come in two varieties, system-wide and user-specific.  If you have local admin rights it is probably best to set a system environment variable for all users, but if you do not have admin rights you can still set one for your user account.

To set your environment variable open Control Panel, select System, then select "Advanced system settings" in the left part of the window to open the System Properties window.  Within the Advanced tab select the button at the bottom that reads "Environment Variables..." to view and edit environment variables.  You will see a list of system and user variables.  To add a new variable to one of these lists, click "New..." and set the variable name to "LM_LICENSE_FILE" and the variable value to "27000@license.soe.ucsc.edu".  If there is already a variable with the LM_LICENSE_FILE name but the wrong value, click "Edit..." and change the value to "27000@license.soe.ucsc.edu".  Remember that if you do not have administrator rights you will not be able to set the system variables, but a user variable will work just as well as they take precedence over system variables.

Mac OS

In OS X Yosemite and later, setting environment variables in Mac OS is best done by creating a plist file in ~/Library/LaunchAgents so that the variable is set upon logging in.  The plist file should consist of the following text:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>Set FlexLM LM_LICENSE_FILE Variable</string>
<key>ProgramArguments</key>
<array>
<string>/bin/launchctl</string>
<string>setenv</string>
<string>LM_LICENSE_FILE</string>
<string>27000@license.soe.ucsc.edu</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>

It would be good to name it something self-explanatory, such as flexlm.variable.plist or something to that effect.  To load it immediately you can type "launchctl load ~/Library/LaunchAgents/flexlm.variable.plist" in a terminal window, or you can log out and log back in.  To verify it has been set, open a terminal and type "env" to list your environment variables.  You should see it in the list with the appropriate value.

Linux

For Bourne shells (sh/bash) the variable is set via "export LM_LICENSE_FILE=27000@license.soe.ucsc.edu" while for C-shells (csh/tcsh) the variable is set via "setenv LM_LICENSE_FILE 27000@license.soe.ucsc.edu".  The appropriate string should be added to your ~/.profile or ~/.cshrc .

To set a system variable in Linux, create a flexlm.sh (or flexlm.csh if you use a C-shell) file in /etc/profile.d/ that sets the environment variable with one of the commands mentioned in the last paragraph.  Note that you will need super user privileges to set a variable this way.