Windows+MATLAB+FLANN编译

本文主要介绍Windows中,FLANN的MATLAB接口配置,因在最近的一个项目中用到了FLANN库,在接口编译上出现了一些问题,特把这个过程记录下来。

1.flann1.8.4下载 

下载flann压缩包并解压,可从这里下载https://github.com/mariusmuja/flann

比如解压到D:\flann位置(我是直接把解压的文件拷到了flann下)。

2.使用命令cd到flann所在目录下

D:/flann

3. mkdir build

cd bulid

D:\flann\build

3. 编译

cmake -G "Visual Studio 13 2015 Win64" .. (看自己vs的版本 比如vs17就是cmake -G "Visual Studio 15 2017 Win64" ..)

Windows+MATLAB+FLANN编译

因为之前已经配置过了,这里build文件已经存在了。

4.CMake 生成sln工程:

管理员身份运行cmake,使用命令cmake-gui配置文件,注意查看: MEXCMD and MEXEXTCMD paths are set correctly to Matlab/R2017a/bin/mex.bat(请参考自己flann所在位置和MATLAB的安装路径)。

点击最下面的configure 和 generate 然后open object

Windows+MATLAB+FLANN编译

5.VS运行flann.sln

我这里是使用Visual Studio2013编译的,(这里要注意在之前生成build文件时选择的VS的那个版本,就用哪个版本的vs编译flann.sln,不然会出现因版本问题,无法打开的情况)。

注意要在x64和Release模式下

  • build project flann_s
  • flann/build/lib/Release 的 flann_s.lib 复制到 flann/build/lib
  • Windows+MATLAB+FLANN编译Windows+MATLAB+FLANN编译
  • build project mex_nearest_neighbors
  • 复制flann/build/src/matlab/nearest_neighbors.mexw64 到 /flann/src/matlab
  • Windows+MATLAB+FLANN编译Windows+MATLAB+FLANN编译
编译完成。
matlab中设置路径D:\flann\src\matlab

FLANN的MATLAB接口配置完成。