Windows下Visual studio 2013 编译 Audacity
2016-12-14 16:38
351 查看
编译的Audacity版本为2.1.2,由于实在windows下编译,其源代码可以从Github上取得
git clone https://github.com/audacity/audacity[/code]。1. 编译WxWidgets
Audacity使用wxWidgets作为GUI的框架,Audacity2.1.2需要wxWidgets 3.0.2,所以在编译Audacity之前需要编译wxWidgets。wxWidgets的下载地址为http://www.wxwidgets.org/downloads/,选择3.0.2的源代码下载。
Audacity在使用wxWidgets时,对其做了一些更改,在编译wxWidgets前,需要用Audacity更改后的源代码替换wxWidgets的源代码。将Audacity源码下的audacity-master\win\wxWidgets_additions\wxWidgets-3.0.2覆盖wxWidgets源码下的相同项。
在目录\wxWidgets-3.0.2\build\msw下,该目录下提供了不同版本的visual studio的solution文件,命名就是Visual studio的版本号,这里使用VS2013打开wx_vc12.sln,使用VS2013进行编译。由于Audacity使用了wxWidgets的部分库,不需要编译整个解决方案。 只需要编译下面几个project:
adv
base
core
html
net
qa
xml
上面的project依赖于下面的project,一起选择编译
wxexpat
wxjpeg
wxpng
wxregex
wxtiff
wxzlib
选择特定的project进行编译的方法,按住Ctrl,然后鼠标左键选择project;project选择完成后,右键->生成选择的内容。
编译时,注意选择解决方案的配置项,DLL Debug对应于Audacity的Debug;DLL Release对应于Audacity的Release。
在Audacity中是通过环境变量引用wxWidgets库的,所以编译完成后,需要为wxWidgets配置环境变量。环境变量的名称为WXWIN,其值为@\wxWidgets-3.0.2,其中@表示wxWidgets源码所在的路径。一定要确定设置的环境变量生效,再开始编译Audacity,不然会出现找不到头文件以及link的错误。2. 编译Audacity
编译好wxWidgets,并设置好环境变量WXWIN后,就可以打开Audacity的solution进行编译了。在目录\audacity-master\win下,用VS2013打开audacity.sln,该solution文件就是VS2013版本的,不需要转换。看Audacity的官方文档,编译时还有各种可选项,由于只是想看下Audacity各种音频操作的源码,这里也就没有管那些可选项,打开解决方案后直接选择生成解决方案,进行编译。
编译过程中,如果出现了头文件找不到,link等错误,认真检查环境变量WXWIN是否设置正确,是否生效。
如果出现的错误是资源文件audacity.rc,那么莫慌,这表明已经编译通过了。只是这个资源有一个字符出现了错误,双击编译提示的错误,找到错误的代码将VALUE "ProductName", "Audacity?改为VALUE "ProductName", "Audacity"。 也就是将最后的 问号?,改为右单引号",不知道是源代码的错误还是文本的解析错误。
F5就可以进入Audacity的调试了。
相关文章推荐
- Windows下Visual studio 2013 编译 Audacity
- Win7(Windows 7)下用VS2013(Visual Studio 2013)编译live555
- 用Visual Studio 2013(VS2013)调用Caffe(注意:不是编译Windows版的Caffe)
- Win7(Windows 7)下用VS2013(Visual Studio 2013)编译crtmpserver
- 在 Windows下用 Visual Studio 2013编译并调试 OpenSSL 1.1.0
- Win7(Windows 7)下用VS2013(Visual Studio 2013)编译live555
- Windows 下使用Visual Studio 2013编译国密算法库GMSSL
- Windows下Visual Studio 2013编译Lua 5.2.3
- Visual Studio 2013、TortoiseSVN、TortoiseGit、msysgit编译Tesseract(tesseract-ocr)
- Windows 8.1、Windows Server 2012 R2、System Center 2012 R2、Visual Studio 2013正式发布了
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
- Visual Studio 2013编译ICU4C 5.31
- 使用 Visual Studio 2013 编译,调试 linux-0.11
- QSlim 2.1在Windows / Visual Studio中编译小记
- Windows下使用Visual Studio 2010编译ffmpeg全过程
- Windows下使用Visual Studio 2010 编译ffmpeg全过程
- Windows Embedded Compact 2013升级:VS2013也能编译
- Windows平台下Visual Studio 2010编译node-sqlite3
- 使用 Visual Studio 2013 编译,调试 linux-0.11
- 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法