[JUCE库]关于JUCE如何生成动态链接库 juce-7.0.1-windows

前言

当我们在使用JUCE库的时候,可能会需要使用到静态链接的方式,还好的一点是JUCE本身提供了CMake编译,也提供了单独的sln编译。

本文章仅针对juce-7.0.1-windows,由于不同版本之间差异较大,可能不能通用,但主要的不同点都在修改源码那个环节。

编译流程

  1. 找到源码中提供的编译方案
  2. 修改工程中的部分设置
  3. 修改部分源码以通过编译

1. 找到源码中提供的编译方案

找到路径

../juce-7.0.1-windows\juce-7.0.1-windows\JUCE\extras\WindowsDLL\Builds\VisualStudio2022

在这里插入图片描述
双击使用VS2022点开WindowsDLL.sln,虽然用VS2019也可以,但是不推荐使用不同版本的VS进行编译操作

直接尝试编译试试,这样编译是编不过的,提示报错如下:
在这里插入图片描述
C2385 对“delete”的访问不明确 xx\juce-7.0.1-windows\JUCE\modules\juce_audio_processors\processors\juce_GenericAudioProcessorEditor.cpp 152

2.对源码进行部分修改

我在JUCE的开发者论坛上搂了一眼,发现上面有开发者提了这个issue,已在后续版本中修复了

这个问题的具体解决方法就是在错误的类中添加上JUCE_LEAK_DETECTOR宏引用即可,我在此是对 ParameterComponent的尾巴上添加了一个 JUCE_LEAK_DETECTOR(ParameterComponent)
在这里插入图片描述
这样就可以生成JUCE的静态链接库了,这是由JUCE官方提供的静态链接库的编译方式

3.修改项目设置,编译动态链接库

右键项目 - >属性->常规->配置类型 修改为动态库.dll
右键项目 - >属性->链接器->输出文件->$(OutDir)\juce_dll.dll
右键项目 - >属性->高级->高级属性->目标文件扩展名->.dll

修改完毕后,重新编辑即可得到JUCE库的动态链接库。
JUCE不算很大,编译出来的文件总共在10MB左右

在这里插入图片描述

posted @ 2024-05-06 18:54  轩先生。  阅读(18)  评论(0编辑  收藏  举报