您的位置:首页 > 其它

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的调试了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: