Cmake/matlab:FIND_程序未找到mex和mexext

Cmake/matlab:FIND_程序未找到mex和mexext,matlab,cmake,mex,Matlab,Cmake,Mex,我对编译东西绝对是新手,我正在尝试用以下(简化的)内容制作一个CMakeList.txt(注释是我对代码的解释): 因为if语句总是返回FALSE,并且我得到了错误消息,所以我认为它找不到mex或/和mexext。我试图将包含这两个文件的目录添加到路径中,但没有任何效果: INCLUDE_DIRECTORIES(/usr/local/MATLAB/R2016a/bin) 现在我没有主意了。问题出在哪里?另一方面,在bash中-mexext不返回任何内容。我正在使用Ubuntu16.10,cma

我对编译东西绝对是新手,我正在尝试用以下(简化的)内容制作一个CMakeList.txt(注释是我对代码的解释):

因为if语句总是返回FALSE,并且我得到了错误消息,所以我认为它找不到mex或/和mexext。我试图将包含这两个文件的目录添加到路径中,但没有任何效果:

INCLUDE_DIRECTORIES(/usr/local/MATLAB/R2016a/bin)

现在我没有主意了。问题出在哪里?另一方面,在bash
中-mexext
不返回任何内容。我正在使用Ubuntu16.10,cmake 3.5.2。

根据
find\u程序
你有几种可能“提示”cmake程序的位置

通过修改
CMakeLists.txt
(如果您是脚本作者):

  • 查找程序的路径或提示选项:

    find_program(MEX_CMD mex PATHS /usr/local/MATLAB/R2016a/bin)
    
  • 设置CMake变量CMake_程序_路径:

  • 设置CMake变量CMake_前缀_路径(不带
    /bin
    后缀):

无需修改
CMakeLists.txt

  • 设置PATH环境变量(在执行
    cmake
    之前,从shell):

  • 将CMake变量CMake_程序_路径传递给
    CMake

     export PATH=$PATH:/usr/local/MATLAB/R2016a/bin
    
     cmake -DCMAKE_PROGRAM_PATH=/usr/local/MATLAB/R2016a/bin <...>
    
     cmake -DCMAKE_PREFIX_PATH=/usr/local/MATLAB/R2016a <...>
    

您确定“bin”在路径中吗?thx太多了!{cmake-DCMAKE_PROGRAM_PATH=/usr/local/MATLAB/r2016 a/bin}工作起来很有魅力
 export PATH=$PATH:/usr/local/MATLAB/R2016a/bin
 cmake -DCMAKE_PROGRAM_PATH=/usr/local/MATLAB/R2016a/bin <...>
 cmake -DCMAKE_PREFIX_PATH=/usr/local/MATLAB/R2016a <...>