mex.h location

I run Matlab in RedHat Linux 6.7 64-bit.
I write a lot of C mex files that compile with '-I/<location of Matlab>/extern/include' in the compiler options and '#include <mex.h>' in the C code.
Now I am starting to share this with other users with their installations in different places, so the '-I' option has to be different in different labs. I am looking for some way to automate this so a common make file can be shared with all users and hopefully will not need updating when Matlab is updated to a new version. [I understand the code may sometimes need revision, but here I am only talking about the include file changing location.]
Do you have any advice how to do this? Of course I can supply a -D option from the command line when running 'make', but this is undesirable for other users to have to bother with. Or I can install an environment variable in each user's shell startup, but that would require maintenance when there is a new version of Matlab.
Ideally, Matlab would install a link to its include directory somewhere like in /usr/local/include when it installs a link to itself in /usr/local/bin.
If you have no present solution to this problem, may I ask that you transfer this question into a feature request.
Thanks,
George Reeke

Respuestas (2)

Walter Roberson
Walter Roberson el 30 de Abr. de 2016

0 votos

If this is to be called within MATLAB, then
fullfile(matlabroot, 'extern', 'include')
is the directory.

1 comentario

George Reeke
George Reeke el 2 de Mayo de 2016
Thanks, but I am talking about running the C compiler called from inside the "mex" command-line command, not from inside Matlab.

Iniciar sesión para comentar.

James Tursa
James Tursa el 4 de Mayo de 2016

0 votos

Why aren't you using double quotes? E.g.,
#include "mex.h"

1 comentario

George Reeke
George Reeke el 4 de Mayo de 2016
I am using double quotes. Somehow they got lost in the online submission. GNR

Iniciar sesión para comentar.

Categorías

Más información sobre Introduction to Installation and Licensing en Centro de ayuda y File Exchange.

Productos

Etiquetas

Preguntada:

el 29 de Abr. de 2016

Comentada:

el 4 de Mayo de 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by