Skip to Main Content Skip to Search
Product Documentation

Compiling Engine Applications in an IDE

Configuring the IDE

If your integrated development environment (IDE) has a MATLAB-supported compiler, you can use the IDE to build engine applications. For an up-to-date list of supported compilers, see the Supported and Compatible Compilers Web page.

Engine applications require the Engine Library libeng, the MX Matrix Library libmx, and supporting include files, described in Files Required by Engine Applications. When you build using the mex command, MATLAB is configured to locate these files. When you build in your IDE, you must configure the IDE to locate them. Where these settings are depends on your IDE. Refer to your product documentation.

This section provides information on how to build in an IDE, such as Microsoft Visual Studio. It is not inclusive and assumes that you know how to use the IDE. If you need more information, refer to your product documentation. It helps to be familiar with the information in Compiling Engine Applications with the MEX Command. Use this information to build an example to make sure the process works. Then configure your IDE with the information from the engine options file.

MathWorks provides Technical Support solutions for configuring specific IDEs. For using Microsoft Visual Studio, see 1-78077S. For using Macintosh Xcode®, see 1-4CKF73.

Files Required by Engine Applications

Specifying Engine Include Files

Header files contain function declarations with prototypes for the routines you access in the API libraries. These files are the same for both Windows and UNIX systems. Engine applications use:

In your IDE, set the pre-processor include path to the value returned by the following MATLAB command:

fullfile(matlabroot, 'extern', 'include')

Specifying Engine Libraries

You need the libeng and libmx shared libraries. The name of the file is platform-specific, as shown in the following table.

Library File Names by Operating System

WindowsLinuxMacintosh (Intel)
libeng.dlllibeng.solibeng.dylib
libmx.dlllibmx.solibmx.dylib

Add these library names to your IDE configuration. Set the library path to the value returned by the following MATLAB command:

fullfile(matlabroot,'bin',computer('arch'))

Refer to your IDE product documentation for instructions. For example, see Technical Support solution 1-78077S.

Specifying Library Files Required by libeng

The libeng library requires additional third-party library files. MATLAB uses these libraries to support Unicode character encoding and data compression in MAT-files.

These library files must reside in the same folder as the libmx library. You can determine what these libraries are using the platform-specific commands shown in the following table. Once you identify these files, update your IDE, following the instructions in Specifying Engine Libraries.

Library Dependency Commands

WindowsLinuxMacintosh

See the following instructions for Dependency Walker

ldd -d libeng.sootool -L libeng.dylib

On Windows systems, to find library dependencies, use the third-party product Dependency Walker. Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows module and builds a hierarchical tree diagram of all dependent modules. For each module found, it lists all the functions that are exported by that module, and which of those functions are called by other modules. Download the Dependency Walker utility from the following Web site:

http://www.dependencywalker.com/

See the Technical Support solution 1-2RQL4L for information on using the Dependency Walker.

Drag and drop the libeng.dll file into the Depends window. Identify the dependent libraries and add them to your IDE configuration, following the instructions in Specifying Engine Libraries.

Specifying ICU Data Files

Verify that the appropriate ICU data file is installed. The ICU file name is:

icudtver.dat

where ver is a version-specific integer. The ICU file path is:

fullfile(matlabroot,'bin',computer('arch'))

To update your IDE, follow the instructions in Specifying Engine Libraries.

  


Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS