[Linux] Softimage, network licenses, and License.env


When you install Softimage 2014 on Linux, the license server name (or IP address) that you enter during setup goes into $SI_HOME/Application/bin/License.env.

rem Licensing method: Standalone | MSSA | Network
SOFTIMAGE_LICENSE_METHOD=Network

rem License servers specified from the setup. Format: [port1]@host1[;[port2]@host2]...
ADSKFLEX_LICENSE_FILE=@my_license_server

So, if you need to change ADSKFLEX_LICENSE_FILE, edit License.env.

ADSKFLEX_LICENSE_FILE is also set in the .xsi resource file (eg $SI_HOME/.xsi_2014_SP2), but License.env takes precedence. Unless, of course, you set ADLM_LICENSE_METHOD or SOFTIMAGE_LICENSE_METHOD:

# Set the ADSKFLEX_LICENSE_FILE
setenv ADSKFLEX_LICENSE_FILE "@192.168.1.221"

# Get License

if ( $?ADLM_LICENSE_METHOD ) then
	setenv SILicMethod $ADLM_LICENSE_METHOD
	setenv ADSKFLEX_LICENSE_FILE $ADSKFLEX_LICENSE_FILE
else if  ( $?SOFTIMAGE_LICENSE_METHOD ) then
	setenv SILicMethod $SOFTIMAGE_LICENSE_METHOD
	setenv ADSKFLEX_LICENSE_FILE $ADSKFLEX_LICENSE_FILE
else if ( -f "$SI_HOME/Application/bin/License.env" ) then
	setenv SILicMethod `sed -n s/SOFTIMAGE_LICENSE_METHOD=//p "$SI_HOME/Application/bin/License.env"`
	setenv ADSKFLEX_LICENSE_FILE `sed -n s/ADSKFLEX_LICENSE_FILE=//p "$SI_HOME/Application/bin/License.env"`
else
	setenv SILicMethod Network
endif

See how the .xsi resource file uses the sed swiss army knife to extract the environment variable values from License.env?

Saturday snippet: Parsing a file from a batch file


From the 2014 version of setenv.bat, which uses the for command to parse the [new] License.env file.

for /f "delims== tokens=1,2*" %%i in (License.env) do (
	if "%%i"=="SOFTIMAGE_LICENSE_METHOD" (
		set SILicMethod=%%j
	) else if "%%i"=="ADSKFLEX_LICENSE_FILE" (
		set _ADSK_LicServers=%%j
	)
)

License.env is a file that looks something like this:

rem Licensing method: Standalone | MSSA | Network
SOFTIMAGE_LICENSE_METHOD=Network

rem License servers specified from the setup. Format: [port1]@host1[;[port2]@host2]...
ADSKFLEX_LICENSE_FILE=2080@somewhere.someplace.com