使用VS2010构建openSmile lib

时间:2015-03-02 01:15:58

标签: c++ visual-studio-2010

我正在尝试在Windows上构建audEering UG的openSmile库。我需要在VS2005上使用这个库,但因为不支持VS2005的设置 - 我的想法是在VS2010上构建它,然后连接到VS2005项目。我不能以某种方式使它工作,所以我会一步一步地写我所做的事情:

  1. 我从官方网站下载最新的openSMILE 2.1版本:http://www.audeering.com/research/opensmile#installation
  2. 我打开http://www.audeering.com/research-and-open-source/files/openSMILE-book-latest.pdf并阅读Windows的设置部分
  3. 我用VS2010打开ide / vs10 / openSmile.sln文件并收到此错误:

    error  : Project "E:\Workplace\openSMILE-2.1.0\thirdparty\portaudio\build\msvc\portaudio.vcxproj" could not be found.
    

    但我在文档中读到PortAudio只是变体中的一种,所以我忽略了问题,因为我没有在我的项目中使用它:

    您可以从此解决方案中选择代表各种组合的多种配置 独立版本(简单的发布和调试配置)和OpenCV的支持 和PortAudio(相应地命名)。

  4. 我手动构建openSmileLibClassif - 完成。

  5. 我手动构建openSmileLibLibsvm - 完成。
  6. 我没有做任何事情,因为openSmileLibPortaudio
  7. 我手动构建SMILEExtract并收到错误:

    error MSB4019: The imported project "E:\Workplace\openSMILE-2.1.0\openSMILE-2.1.0\ide\vs10\gnuGpl.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
    

    我检查项目目录中是否有gnuGpl.props文件,但我找不到它。我尝试下载以前版本的lib:openSMILE-2.0-rc1。解压缩后,在先前版本中有一个gnuGpl.props文件。我把它复制到2.1版本。

  8. 尝试再次构建SMILEExtract。我收到其他错误:

    2>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(E:\Workplace\openSMILE-2.1.0\openSMILE-2.1.0\ide\vs10\Debug\SMILExtract_Debug.exe) does not match the Linker's OutputFile property value (E:\Workplace\openSMILE-2.1.0\msvcbuild\SMILExtract_Debug.exe). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
    2>LINK : fatal error LNK1104: cannot open file 'E:\Workplace\openSMILE-2.1.0\msvcbuild\openSmileLib_Debug.lib'
    
  9. 我认为将gnuGpl.props从之前的项目复制到新项目可能是个坏主意,所以我尝试构建openSMILE-2.0-rc1而我得到的错误与第8点相同。

  10. 有人能告诉我我做错了什么吗?

3 个答案:

答案 0 :(得分:1)

我从项目目录中删除了openSmileLibPortaudio(因为使用它会禁用ASIO而我需要它)和编译项目3次错误消失了,我只有关于考虑输出文件位置的警告。

答案 1 :(得分:0)

将您的模式从调试更改为发布!

手册中的

: 在Windows上构建的重要说明:某些版本的Visual Studio 总是选择&#34; Debug&#34;默认配置而不是&#34;发布&#34;组态。 但是,您始终希望构建&#34;发布&#34;配置,除非你 一个openSMILE开发人员。因此,你总是选择&#34;发布&#34;组态 在点击&#34;构建解决方案&#34;之前,从下拉菜单中!!

答案 2 :(得分:0)

openSmileLib上单击鼠标右键,转到project->add->exist item, 选择src\examples\simpleMessageSender.cpp,然后单击add to openSmileLib project,最后,重新编译代码。