Clear Filters
Clear Filters

mex.h location

13 views (last 30 days)
George Reeke
George Reeke on 29 Apr 2016
Commented: George Reeke on 4 May 2016
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

Answers (2)

Walter Roberson
Walter Roberson on 30 Apr 2016
If this is to be called within MATLAB, then
fullfile(matlabroot, 'extern', 'include')
is the directory.
  1 Comment
George Reeke
George Reeke on 2 May 2016
Thanks, but I am talking about running the C compiler called from inside the "mex" command-line command, not from inside Matlab.

Sign in to comment.


James Tursa
James Tursa on 4 May 2016
Why aren't you using double quotes? E.g.,
#include "mex.h"
  1 Comment
George Reeke
George Reeke on 4 May 2016
I am using double quotes. Somehow they got lost in the online submission. GNR

Sign in to comment.

Categories

Find more on Startup and Shutdown in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!