Build on macOS and Linux Operating Systems
Set Run-Time Library Path
At run time, you must tell the macOS and Linux® operating system where the API shared libraries reside by setting an
environment variable. The macOS or Linux command you use and the values you provide depend on your shell and system
architecture. The following table lists the name of the environment variable
(envvar
) and the value (pathspec
) to
assign to it. The term matlabroot
refers to the root folder of
your MATLAB® installation.
Operating System | envvar | pathspec |
---|---|---|
64-bit Apple Mac |
|
|
64-bit Linux |
|
|
Using the C Shell
Set the library path using the command.
setenv envvar pathspec
Replace the terms envvar
and
pathspec
with the appropriate values from the table. For
example, on a macOS system use:
setenv DYLD_LIBRARY_PATH matlabroot/bin/maci64:matlabroot/sys/os/maci64
You can place these commands in a startup script, such as
~/.cshrc
.
Using the Bourne Shell
Set the library path using the command.
envvar = pathspec:envvar export envvar
Replace the terms envvar
and
pathspec
with the appropriate values from the table. For
example, on a macOS system use:
DYLD_LIBRARY_PATH=matlabroot/bin/maci64:matlabroot/sys/os/maci64:$DYLD_LIBRARY_PATH export DYLD_LIBRARY_PATH
You can place these commands in a startup script such as
~/.profile
.
For more information, see Append library path to "DYLD_LIBRARY_PATH" in MAC.
Build Application
To compile and link MAT-file programs, use the mex
script with the -client engine
option.
This example shows how to build the example matcreat.c
. Use this
example to verify the build configuration for your system. matcreat
is C
program that demonstrates how to use the MAT-File API routines to create a MAT-file that you
can load into MATLAB.
To build the example, first copy the source code to a writable folder on your path.
copyfile(fullfile(matlabroot,'extern','examples','eng_mat','matcreat.c'),'.','f')
Use the following command to build it.
mex -client engine matcreat.c
To modify the build instructions for your particular compiler, use the -v
-n
options to view the current compiler and linker settings. Then, modify the
settings using the mex
option.varname
=varvalue