如何使用cmake命令更改MATLAB路径来编译FLANN的mex文件?

如何使用cmake命令更改MATLAB路径来编译FLANN的mex文件?,matlab,compilation,makefile,cmake,flann,Matlab,Compilation,Makefile,Cmake,Flann,我尝试在远程机器上编译FLANN,但我不是根用户。为此,我在家里编译了cmake,并设置了一个别名来调用。我还从网上下载了FLANN,并按照手册中的建议进行编译 mkdir build cd build cmake .. make 它是编译没有错误,但matlab模块和mex编译。即使我将matlab bin添加到$PATH中,它也会在cmake..之后发出以下警告 ... CMake Warning at src/matlab/CMakeLists.txt:57 (message): T

我尝试在远程机器上编译FLANN,但我不是根用户。为此,我在家里编译了cmake,并设置了一个别名来调用。我还从网上下载了FLANN,并按照手册中的建议进行编译

mkdir build
cd build
cmake ..
make
它是编译没有错误,但matlab模块和mex编译。即使我将matlab bin添加到$PATH中,它也会在
cmake..
之后发出以下警告

...
CMake Warning at src/matlab/CMakeLists.txt:57 (message):
  The 'mex' and 'mexext' programs have been found in different locations.
  It's likely that one of them is not part of the MATLAB instalation.  Make
  sure that the 'bin' directory from the MATLAB instalation is in PATH
...
由于这个问题,当我执行
make
时,不会编译matlab mex文件。 即使我尝试设置一些cmake配置,我也无法以任何方式解决这个问题。有什么建议来解决这个编译问题吗

echo $PATH
/home/y/bin:/usr/kerberos/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/bin:/usr/bin:/usr/local/matlab/bin

which mex
/usr/local/bin/mex

which mexext
/usr/local/matlab/bin/mexext
(解决方案在注释中。请参阅)

OP写道:

我通过在
$path

另一种解决方案(对我有效)是在/usr/local/bin中为mexext创建一个符号链接,指向实际找到mexext的位置

sudo ln -s /usr/local/MATLAB/R2016a/bin/mexext /usr/local/bin/mexext

能否添加这三个命令的输出:
echo$PATH
which mex
、和
which mexext
?我通过将matlab路径放在$PATH的第一位来解决这个问题