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

Réponses (2)

Walter Roberson
Walter Roberson le 30 Avr 2016

0 votes

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

1 commentaire

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

Connectez-vous pour commenter.

James Tursa
James Tursa le 4 Mai 2016

0 votes

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

1 commentaire

George Reeke
George Reeke le 4 Mai 2016
I am using double quotes. Somehow they got lost in the online submission. GNR

Connectez-vous pour commenter.

Catégories

En savoir plus sur Startup and Shutdown dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by