Skip to content

Instantly share code, notes, and snippets.

@luoyetx
Created September 21, 2014 15:32
Show Gist options
  • Save luoyetx/0a06c126d49f74702edd to your computer and use it in GitHub Desktop.
Save luoyetx/0a06c126d49f74702edd to your computer and use it in GitHub Desktop.

matio库

使用开源matio库来读取rcpr_COFW.mat文件的矩阵数据。matio的源码可从这里下载

###1.编译matio库

1.下载依赖库zlib和HDF5(windows下编译好的HDF5自带zlib库)。HDF5可以从这里下载,下载预先编译好的动态库版本并进行安装

2.安装完后添加系统变量HDF5_DIR,其值为HDF5的安装目录,例如D:\Program Files (x86)\HDF_Group\HDF5\1.8.13,并将库的bin目录加入系统环境变量PATH中,%HDF5_DIR%\bin

3.解压matio库并打开visual_studio文件夹下的vs工程(工程是vs2008版本的,做一下升级就行了)。由于依赖库的版本问题,对项目属性要做如下改动:

  1. 添加HDF5的头文件路径,$(HDF5_DIR)\include
  2. 添加HDF5的库文件路径,$(HDF5_DIR)\lib
  3. 可能需要更改链接器输入,输入文件为hdf5.lib,zlib.lib

工程配置完后直接编译可在vs工程目录下的Release文件夹中得到lib文件和dll文件

###2.工程项目配置

1.收集matio的头文件,除了在src目录下的所有.h文件还有visual_studio目录下的两个头文件matio_pubconf.h, matioConfig.h,总共7个头文件,并将编译生成的lib文件和dll文件做相应的拷贝。

2.创建vs工程时,添加matio的头文件路径和lib文件的路径,链接器输入增加libmatio.lib,并将dll文件放入工程Debug,Release目录下,或者放入系统PATH路径中。

3.添加预定义宏MAT73=1, HAVE_HDF5=1, HAVE_ZLIB=1, 添加HDF5头文件路径(不需要lib文件路径)

###3.直接在工程中使用matio源码

1.收集相应的C文件和H文件(src目录和visual_studio目录)

2.创建vs工程,并添加matio源码文件

3.添加HDF5头文件路径和lib文件路径,链接器输入为hdf5.lib,zlib.lib

4.添加预定义宏MAT73=1, HAVE_HDF5=1, HAVE_ZLIB=1, _CRT_SECURE_NO_WARNINGS, _CRT_NONSTDC_NO_DEPRECATE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment