1. 用VS2017生成一个空项目
2. 加入需要的Kaldi项目
在windows下编译Kaldi项目的时候,会在kaldiwin_vs2017_OPENBLAS\kaldiwin目录下生成很多项目,第一次使用Kaldi的话,建议将前缀为kaldi-的项目都加入到上面的空项目里(带test的不用加)。
VS2017IDE左上角选择 文件 -> 添加 -> 现有项目,找到上述kaldi-前缀项目,进入目录,选择里面的工程文件。加完后如下图:
3. 将kaldi项目加入到空项目的引用中
选择Project2下拉中的引用,点右键,选择“添加引用”。然后讲上面加入的项目都勾选上,确定保存。如下图
4. 配置空项目的属性管理器
左上菜单栏中的视图->其他窗口->属性管理器;点开Project2;来配置Debug | x64 和 Release | x64
右键选择Debug | x64, 选择“添加现有属性表”,在kaldiwin_vs2017_OPENBLAS\kaldiwin目录下依次将variables.props,kaldiwin.props和openfstwin_debug.props添加入Debug | x64; 然后同样操作Release | x64, 只是将openfstwin_debug.props更换成openfstwin_release.props。结果如下图:
5. 给空项目添加CPP源文件
然后,选择项目,右键选择属性->C/C+±>所有选项->附加包含目录,需要把kaldi/src目录添加进去,Debug | x64和Release | x64下都要添加一次。
6. 到kaldi\src\bin目录下,随便找一个测试例子,比如第一个acc-lda.cc,打开,拷贝代码到新建的源文件中。
7. 分别在Debug | x64 和 Release | x64下编译和生成。
- Debug | x64模式下,需要右键选择属性->链接器>命令行, 加入 /nodefaultlib:"MSVCRT" ,否则会出很链接错误。
- Release | x64模式下,则不需要。