Runtime Libraries and Other Dependencies
- Make sure that there is no other Xpress software, library files or license files on the path or in any directories used or accessed by your application – in particular, be careful that no earlier releases of Xpress software are present.
- The files you need to run (but not compile) applications depend on which of the Xpress libraries you are using. Here we give the files required for Windows and Solaris; the files required for other Unix operating systems are similar to those required for Solaris, but the exact file names sometimes differ in an obvious way. (The suffix X in Solaris file names indicates the version number.) All of these files (with the exception of your particular license file, xpauth.xpr) should be taken from the current Xpress release distribution. See note 9 below for an explanation of the UNIX symbolic links required for UNIX installations.
- An Optimizer application requires the files
Windows Solaris Notes Optimizer library xprs.dll libxprs.so.* Optimizer library Java wrapper javaxprs.dll libjavaxprs.so (Java and MATLAB Java only) Xpress support library xprl.dll libxprl* Python interface xpress*.pyd xpress*.so (Python only) Optimizer library .NET wrapper xprsdn.dll mscoree.dll N/A (Windows .NET only) MATLAB interface xprs*.mexw* xprs*.mex* (MATLAB only) Knitro library xknitro.dll xknitronl.dll libiomp5md.dll libxknitro.so.* libxknitronl.so.* (if required) License file xpauth.xpr xpauth.xpr - A BCL application requires the files
Optimizer library xprs.dll libxprs.so.* BCL library xprb.dll libxprb.so.* BCL library Java wrapper xprb_J.dll libxprb_J.so (Java only) Optimizer library Java wrapper javaxprs.dll libjavaxprs.so (Java only, if required) BCL library .NET wrapper xprndn.dll mscoree.dll N/A (Windows .NET only) National language support xprnls.dll libxprnls.so (Windows only) VB library extensions xprvb.dll N/A (VB only) Xpress support library xprl.dll libxprl.* License file xpauth.xpr xpauth.xpr
- A Mosel (run-time library) application requires the files
Optimizer library xprs.dll libxprs.so.* (if required, see additional dependencies below) Mosel library xprm_rt.dll libxprm_rt.so.* Mosel executable mosel.exe mosel (required for remote connections or Mosel command line) Mosel library Java wrapper xprm_rtJ.dll libxprm_rtJ.so.* (Java and MATLAB Java only) Mosel compiler library xprm_mc.dll libxprm_mc.so.* (if required, e.g. by executable) Mosel compiler library Java wrapper xprm_mcJ.dll libxprm_mcJ.so.* (Java only; if required) Mosel library .NET wrapper xprmdn.dll mscoree.dll N/A (Windows & .NET only) Mosel library .NET wrapper helper DLL xprndn-c- helper.dll N/A (Windows & .NET only) MATLAB interface moselexec.mexw* moselexec.mex* (MATLAB only) National language support xprnls.dll libxprnls.so Mosel modules or packages used XXX.dso XXX.bim XXX.dso XXX.bim (as required, see additional dependencies below) VB library extensions xprmvb.dll N/A (VB only) Xpress support library xprl.dll libxprl.* License file xpauth.xpr xpauth.xpr - Certain Mosel modules or packages have additional dependencies, so these files also need to be provided if you use the specified component:
advmod.bim mmxprs.dso aec2.bim mmjobs.dso mmhttp.dso mmssl.dso mmsystem.dso mmxml.dso Windows: mplink.exe mpscp.exe dmp.dso mmhttp.dso mmsystem.dso Windows: jansson.dll Unix: libjansson.so.* executor.bim mmjobs.dso mmhttp.dso mmxml.dso mmsystem.dso executor.dso Windows: jansson.dll Unix: libjansson.so.* fssappstudio.bim mmxml.dso mmsystem.dso hadoop.dso libjava.so (Linux only) kalis.dso Windows: Kalis.dll xprs.dll (Windows and Linux) Linux: libKalis.so libxprs.so.* libstdc++.so.* libgcc_s.so.*+ matlab.dso (MATLAB installation required) mmhttp.dso mmjobs.dso mmsystem.dso mminsight.bim mminsight.dso mmxprs.dso mmxml.dso mmsystem.dso mmhttp.dso mmjobs.dso trusteddsn.dso mmssl.dso s3.dso s3.bim debugarchive.bim mminsightannotations.bim mmjobs.dso Windows: xprm_mc.dll Unix: libxprm_mc.so.* mmoci.dso (Oracle Instant Client installation required) mmrobust.dso mmxprs.dso Windows: xprs.dll / Unix:libxprs.so.* mmsheet.dso Windows: libxl.dll (Windows, Linux, OSX) mmssl.dso mmsystem.dso Windows: LIBEAY32.dll SSLEAY32.dll Unix: libssl.so.* libcrypto.so.* mmsvg.bim mmsystem.dso mmjobs.dso mmxml.dso mmsvg.tgz mmxml.dso mmsystem.dso mmxnlp.bim mmxprs.dso mmnl.dso mmjobs.dso mmsystem.dso mmxnlp.dso Windows: xprs.dll / Unix: libxprs.so.* Knitro solver (optional): Windows: xknitro.dll xknitronl.dll libiomp5md.dll Unix: libxknitro.so.* libxknitronl.so.* mmxprs.dso Windows: xprs.dll / Unix: libxprs.so.* nlsolv.dso Windows: amplxpress.exe xprs.dll Unix: amplxpress libxprs.so.* python3.dso (Python 3 installation required) r.dso (R installation required) s3.bim mmjobs.dso mmssl.dso mmxml.dso mmsystem.dso mmhttp.dso s3.dso Windows: jansson.dll Unix: libjansson.so.* zlib.dso Unix: libz.so.* (no extra dependency on Windows) mmssl executable Windows: mmssl.exe / Unix: mmssl (required for https setup) xprmsrv executable Windows: LIBEAY32.dll ssh.dll Unix: libssh.so.* libcrypto.so.* (for remote connections) - If you are using a floating license, you also need these files:
Xpress license manager xpserver.exe xpserver License state query tool xplicstat.exe xplicstat - Some of the components of FICO Xpress Optimization contain open source software. When redistributing parts of Xpress please make sure that you also include the corresponding files from the licenses subdirectory of the Xpress distribution.
- An Optimizer application requires the files
- Copy all of the Xpress files listed above to one directory on your end-user's computer. This can be any directory, but we strongly recommend that you use the directory containing your application program.
If you are building a runtime distribution for Mosel applications we recommend that you maintain the same subdirectory structure (with directories bin, dso, lib, and if you are using MATLAB also matlab) as the original Xpress distribution. - Windows libraries: Add the directory containing the Xpress files to the Windows PATH, so that Windows knows where to find the Xpress DLLs.
- Unix libraries: Add the directory containing the Xpress libraries to the environment variable for locating shared libraries on your platform (LD_LIBRARY_PATH for Linux and Solaris, DYLD_LIBRARY_PATH on macOS).
- Windows licensing: Copy the Xpress license file, xpauth.xpr, into the directory containing the Xpress DLLs. If you store the license file in a different location, set the XPAUTH_PATH environment variable to its full path. It is not recommended to store the license file in a different location, because it adds to the complexity of the Xpress licensing procedure and makes it difficult to support your application on your end-user's computer. For the same reason, it is not recommended to specify the location of the license file by passing an explicit path argument (to XPR?license or XPR?init) when initializing Xpress.
- Unix licensing: Set the environment variable XPAUTH_PATH to the full path to the Xpress license file, xpauth.xpr.
Note: Previous releases of Xpress used the XPRESS environment variable to locate the license file. This is now deprecated in favour of the XPAUTH_PATH environment variable. When upgrading, please ensure that any installation scripts, application code and documentation is updated to use XPAUTH_PATH instead of XPRESS.
- If you are using Mosel, set the environment variable MOSEL_DSO to point to the directory containing the Mosel DSO files.
- Unix symbolic links: The tar file distributions contain symbolic links e.g. libxprs.so.17.10.01 -> libxprs.so.17.10 -> libxprs.so ( .so extension may vary between UNIX platforms).
In the example above, the binary file has the full version number postfixed to enable the support team to easily identify the exact version number being used. The intermediate filename without the 3rd element of the version number is used internally by one Xpress component to link to another. The link with no version number is used to support the version-independent documentation, examples and example makefiles.
In general, it is possible to remove the soft links and rename the libraries, with the following exceptions. The security library must be made available as libxprl.so.yyyy for all Xpress components to use. If any components ( including Xpress Optimizer console ) other than the Xpress Optimizer runtime library are to be used then the Xpress Optimizer runtime library must be made available as libxprs.so.xx.yy .