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

2024-05-06 21:04

本文主要是介绍[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左右

在这里插入图片描述

这篇关于[JUCE库]关于JUCE如何生成动态链接库 juce-7.0.1-windows的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/965372

相关文章

问题-windows-VPN不正确关闭导致网页打不开

为什么会发生这类事情呢? 主要原因是关机之前vpn没有关掉导致的。 至于为什么没关掉vpn会导致网页打不开,我猜测是因为vpn建立的链接没被更改。 正确关掉vpn的时候,会把ip链接断掉,如果你不正确关掉,ip链接没有断掉,此时你vpn又是没启动的,没有域名解析,所以就打不开网站。 你可以在打不开网页的时候,把vpn打开,你会发现网络又可以登录了。 方法一 注意:方法一虽然方便,但是可能会有

Windows/macOS/Linux 安装 Redis 和 Redis Desktop Manager 可视化工具

本文所有安装都在macOS High Sierra 10.13.4进行,Windows安装相对容易些,Linux安装与macOS类似,文中会做区分讲解 1. Redis安装 1.下载Redis https://redis.io/download 把下载的源码更名为redis-4.0.9-source,我喜欢跟maven、Tomcat放在一起,就放到/Users/zhan/Documents

android 带与不带logo的二维码生成

该代码基于ZXing项目,这个网上能下载得到。 定义的控件以及属性: public static final int SCAN_CODE = 1;private ImageView iv;private EditText et;private Button qr_btn,add_logo;private Bitmap logo,bitmap,bmp; //logo图标private st

Windows中,.net framework 3.5安装

安装.net framework,目前已知2种方法,如下: 一、在MSDN下载对应的安装包,安装,这种可能无法安装成功,概率很大,不成功使用第二种方法,基本上没问题。 二、win8/8.1/10 下安装 .net framework 3.5.1: 1. 打开 win8/8.1/10 安装盘(这里指系统安装镜像文件),提取 sources\sxs 文件夹到 X:\sources\sxs (X代

Windows 可变刷新率是什么?如何开启?

在现代计算设备中,显示屏的刷新率对用户体验起着至关重要的作用。随着显示技术的不断进步,固定刷新率显示器逐渐被支持可变刷新率(Variable Refresh Rate, VRR)技术的显示器所取代。 可变刷新率定义 可变刷新率是什么?可变刷新率(VRR)是一种显示技术,它允许显示器的刷新率动态调整,以匹配显卡输出的帧率。传统的显示器通常具有固定的刷新率(如60Hz、75Hz等),这意味着显示器

如何设置windows计划任务

如何设置windows计划任务 前言:在工作过程中写了一个python脚本,用于调用jira接口查询bug单数量,想要在本地定时任务执行,每天发送到钉钉群提醒,写下操作步骤用于记录。 1. 准备 Python 脚本 确保你的 Python 脚本已经保存到一个文件,比如 jira_reminder.py。 2. 创建批处理文件 为了方便任务计划程序运行 Python 脚本,创建一个批处理文

FastAdmin/bootstrapTable 表格中生成的按钮设置成文字

公司有个系统后台框架用的是FastAdmin,后台表格的操作栏按钮只有图标,想要设置成文字。 查资料后发现其实很简单,主需要新增“text”属性即可,如下 buttons: [{name: 'acceptcompany',title: '复核企业',text:'复核企业',classname: 'btn btn-xs btn-primary btn-dialog',icon: 'fa fa-pe

获取Windows系统版本号(转)

https://blog.csdn.net/sunflover454/article/details/51525179

PHP生成csv格式Excel,秒级别实现excel导出功能

防止报超内存,兼容中文,兼容科学技术法。 爽。。。。很爽。。。。 /*** 告诉浏览器下载csv文件* @param string $filename*/public static function downloadCsv($data, $filename, $encoding = 'utf-8'){header("Content-type: text/csv");header("Conten

PHP 读取或生成大的Excel

场景,在很多情况下,需要读取Excel文件。 常用的有PHPExcel包或者使用 maatwebsite/excel 包 但是使用这个包读取或生成excel,如果excel文件过大,很容易出现超内存情况。 解决方法: 上传:要求上传者使用.csv 文件上传。然后使用php自带的 fgetcsv()函数来读取文件。http://php.net/manual/zh/function.fgetc