当前位置:   article > 正文

【Audacity】 Win10下成功编译 wxWidgets + Audacity_audacity源码分析

audacity源码分析

编译环境

Win10 64bit

VS2017

0, 首先声明,官方的编译指引是有问题的!!不要盲从!

主要问题就是wxWidgets的编译,源码不要Audacity的fork版wxWidgets,而要wxWidgets官方版的,我曾一度被误导。

1,编译wxWidgets

1.1 下载源码

我用的是迄今为止最新的版本3.1.3(写博客这天是2020-03-25)

Releases · wxWidgets/wxWidgets · GitHub

下载wxMSW-3.1.3-Setup.exe

安装到C:\wxWidgets-3.1.3

1.2 编译

1)添加必要的宏定义

在C:\wxWidgets-3.1.3\include\wx\chkconf.h的文件头附近添加宏定义

#define wxUSE_SECRETSTORE   1

解释一下原因:

因为我不加这个宏,即使顺利编译wxWidgets之后,编译Audacity也会出错,提示:

"wxUSE_SECRETSTORE must be defined, please read comment near the top of this file."

所以我加了这个宏。

2)选择合适的解决方案配置

用VS2017打开C:\wxWidgets-3.1.3\build\msw\wx_vc15.sln

调试版选择 DLL Debug

发布版选择 DLL Release

然后【生成】->【生成解决方案】

2,编译Audacity

代码下载 GitHub - audacity/audacity: Audio Editor

2.1 设置依赖库wxWidgets的环境变量

为系统添加环境变量WXWIN,值为C:\wxWidgets-3.1.3(就是上面的wxWidgets安装目录)

2.2 Audacity工程的属性配置-->链接器-->附加目录  添加 ${WXWIN}\lib\vc_dll

小插曲,可能是VS2017本身问题,出现过几次,找不到文件的错误提示,需要重新启动VS2017,或者在包含目录添加了头文件所在目录的绝对路径。

2.3 用VS2017打开Audacity下的win/audacity.sln,然后【生成】->【生成解决方案】

至此,小功告成。

3,后续插曲

3.1 有人尝试按我的步骤来编译,结果出现问题

报错未能找到程序集“platform.winmd”: 请使用 /AI 或通过设置 LIBPATH 环境变量指定程序集搜索路径 

解决办法:

工程属性-->通用属性-->C/C++-->常规-->使用Windows运行时扩展:默认“是”改为“否”  

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/40382
推荐阅读
相关标签
  

闽ICP备14008679号