Win7 VS2017编译Audacity2.1.3
最近比较热衷折腾大型开源软件编译,因为在逐渐用开源软件替换盗版软件,除去盗版用着不安全的原因外,主要还是因为开源软件有源码,可以学习研究,另外就是体积小。
像Matlab每次装完都用不上什么功能,体积7-8个G,安装又慢,实在受不了,再用绝对只装Octave。
Photoshop我也基本只是当画画软件用,打算换成Krita,去年尝试编译了一下失败了,看了下官方说明才发现那么复杂,得等哪天有空好好折腾一次才行,毕竟最强开源绘画软件。
回到正文
参考的官方维基VS2015的编译,因为2015和2017通用性较好,所以几乎没遇到什么困难就通过了。
首先到官方下载wxWidgets-3.1.0源码,写本文时好像更新到3.1.1了,不过估计应该没太大区别
http://www.wxwidgets.org/downloads/
wxWidgets-3.1.0.7z解压后
VS2017打开
wxWidgets-3.1.0\build\msw\wx_vc14.sln
SDK版本选择更新,我是Win7就选的是8.1,如果是Win10可能就用10.x吧
Platform Toolset也更新到v141,然后选OK
切换到DLL Debug模式
在Solution上选
Build Solution
而非只编译单个项目
显示
Build: 24 succeeded, 0 failed, 0 up-to-date, 0 skipped
24成功,0失败
然后到来这个VS2015配置成功的版本,没使用官方版本是因为,写本文时官方版本似乎只能通过VS2013的配置,
而2015有些函数有改变,这在之前DX11工程2013升级到2015时也遇到过。
总之修改起来麻烦又费时,所以直接采用了这个VS2015的版本。
也许未来官方会直接加入VS2015及更高版本的支持,但是现在选择这个版本是最省力的办法,
下源码的目的是学习算法与逻辑处理实现,而不是浪费时间在无意义的配置上。
https://github.com/ShanghaiTimes/Audacity2015
我们需要VS2015这个分支,所以
git clone -b vs2015 https://github.com/ShanghaiTimes/Audacity2015.git
参考官方Windows下编译
https://github.com/audacity/audacity/blob/master/win/compile.txt
新建环境变量,换成你自己的安装位置
WXWIN = E:\CPPLibs\wxWidgets-3.1.0

下载ASIO SDK
https://www.steinberg.net/en/company/developers.html
新建环境变量,换成你自己的安装位置
ASIOSDK_DIR = E:\CPPLibs\ASIOSDK2.3

重新启动Visual Studio
打开
Audacity2015\win\audacity.sln
升级到对应版本,同上
Audacity上选Build

显示
audacity.rc
33行有错误

用notepad++打开audacity.rc看一下

看起来是行尾?应该改成"引号

修改后保存,再Build,成功
复制以下文件到
Audacity2015\win\Debug
目录下
wxbase31ud_net_vc_custom.dll
wxbase31ud_vc_custom.dll
wxbase31ud_xml_vc_custom.dll
wxmsw31ud_adv_vc_custom.dll
wxmsw31ud_core_vc_custom.dll
wxmsw31ud_html_vc_custom.dll
wxmsw31ud_qa_vc_custom.dll
EQDefaultCurves.xml
以及Languages文件夹整个
其实就是你安装一个Audacity
照猫画狗把少的文件复制过去就行,当然要用你自己编译的wxWidgets版本的DLL
Ctrl + F5,成功运行
打开
src/AudacityApp.cpp
文件
AudacityApp::OnInit
函数上下断点,F5调试,成功断下来

打开
src/toolbars/ControlToolBar.cpp
ControlToolBar::SetPlay
函数上下断点,载入音频,点击播放,成功断下来
完美收工

Win7 VS2017编译Audacity2.1.3的更多相关文章
- Win7 VS2017编译PBR渲染引擎google filament
按照官方说明 https://github.com/google/filament 前置工具包 Windows 10 SDKVisual Studio 2017Clang 6Python 3.7Git ...
- Win7 VS2017编译Blender2.79
去年在VS2013环境编译过一次,重装系统后换了VS2017,正好刚编译完Godot3.0.2,顺手把Blender也编译了吧. 官方Windows下编译指南 https://wiki.blender ...
- Win7 VS2017编译bgfx图形API
官方的编译指南在这个页面 https://bkaradzic.github.io/bgfx/build.html#quick-start 目前的版本编译比较简单,下载3个项目,放于同级目录下 http ...
- Win7 VS2017编译magnum及例子
magnum是一个开源的图形中间件 Lightweight and modular C++11/C++14 graphics middleware for games and data visuali ...
- Win7 VS2017编译Godot3.0.2和2.1.4
千呼万唤屎出来,Godot终于发布3.0版本的源码了,今天是2018年3月17日,自去年接触过后,一直没事就刷刷Gayhub,看看3.0什么时候更新,刷了一年也没结果. 今天上Youtube无意中搜了 ...
- windows 平台使用 VS2017 编译openssl源码
windows 平台使用 VS2017 编译openssl源码 1)依赖安装 安装 perl 脚本解释器 下载 http://libevent.net/download 安装 nasm 汇编器 C:\ ...
- 32位win7+vs2008编译mysql 5.6.22源码并安装
以下这部分安装说明是来自http://www.2cto.com/database/201407/316681.html的win7+vs2010源码编译mysql,文章最后会说明用vs2008编译遇见的 ...
- windows 平台使用 VS2017 编译 libevent 源码
一 依赖库编译 先要将其依赖的库编译好,其中openssl需要编译到libevent中,编译成libevent_openssl.lib库,zlib在新版本中只有示例用到. 1)windows 平台使用 ...
- VS2017 编译 Visual Leak Detector + VLD 使用示例
起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了.这个真是头疼 ...
随机推荐
- 【转】如何使用离线博客发布工具发布CSDN的博客文章
目前大部分的博客作者在用Word写博客这件事情上都会遇到以下3个痛点: 1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.使用Word写 ...
- java 将mysql中Blob类型转为字符串或数字
引入Blob类型貌似不行,不知道是版本问题还是java中的Blob类型为oracle,后来使用byte[]转换成功. public float byte2float(byte[] b) { if(b! ...
- 1.express中间件的简介
express中间件的意思 1, 中间件是一个模块.在js中,模块意味着函数,所以中间件是一个函数.那么这个函数长什么样子? 这还要从中间件的功能说起,它拦截http 服务器提供的请求和响应对象,执行 ...
- BUG在线上环境中出现的原因总结
1.线上环境数据的复杂度以及数据量是测试环境不能比拟的. 2.业务操作的不可控性,用户错误的使用习惯. 3.实际场景的复杂性. 上线之后,测试人员需要做好以下二件事: 第一,灰度测试 项目上线之后 ...
- 微信小程序---获取上传图片大小
wx.chooseImage({ count: 1, sizeType: ['compressed'], sourceType: ['album', 'camera'], success: funct ...
- Pycharm--flake8的配置使用
前言:Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具.Flake8检查规则灵活,支持集成额外插件,扩展性强. 一.安装flake8 进入虚拟环境: pip inst ...
- java operate
class OperateDemo { public static void main(String[] args) { /* + - * / %(取余数) */ int x = 2810; Syst ...
- DVWA中low级的sql注入漏洞的简单复现
第一次成功复现一个简单漏洞,于是写下这篇随笔记录一下 首先我们来看dvwa中low级的sql注入的源码 源码文件路径如下图: 源码如下: <?php if(isset($_GET['Submit ...
- 电话号自动识别之bug解决汇总
今天测试一个defect: “联系我们”页显示的电话号码,在不同浏览器显示效果不统一,有些浏览器自动识别电话号码并强制添加了样式. 网络搜索发现,其它website 也有类似问题,例如:http:// ...
- 大数据实操2 - hadoop集群访问——Hadoop客户端访问、Java API访问
上一篇中介绍了hadoop集群搭建方式,本文介绍集群的访问.集群的访问方式有两种:hadoop客户端访问,Java API访问. 一.集群客户端访问 Hadoop采用C/S架构,可以通过客户端对集群进 ...