2

我有 VST 插件的代码,需要将其中的一部分移植到 iOS 应用程序中。

我已经尝试构建 OSX 版本并使用lib.a它,但它不起作用。当我打开它的 iOS 版本时,Xcode 显示它缺少 tagret。

在此处输入图像描述

如果我使用所有 JUCE 模块将代码直接复制到 Xcode 中,并设置标头搜索路径,则会出现编译错误,例如no such type for String

在最新的 JUCE 更新之后,Xcode 会给出相同的错误,直到我更新 JUCE 文件本身,所以我认为新版本的 JUCE 构建设置或配置正在做一些不同的事情。如何将此代码放入不同的 Xcode 项目中,以便我可以使用它?

我可以将它编译为库并通过标头使用对象吗?

4

1 回答 1

3

JUCE 旨在包含在 Introjucer / Projucer(JUCE 项目管理工具)生成的项目中。没有这个,将不会设置正确的预处理器定义。

如果您确实需要在程序中包含 JUCE 源代码,您可以手动设置这些预处理器定义(查看生成的项目中的 AppConfig.h 标头以了解这将是多少工作),但是您真的会违背正常的“JUCE 方式”。

简单地包括标题和链接到库将无法正常工作,因为包含结构是......奇怪......并且没有任何库可以直接链接(生成的项目通常包含所有 JUCE 源,所以没有必要)。

在项目中直接添加要编译的JUCE源文件(即.cpp和.mm)会导致编译错误,因为它们需要按照头文件(头文件#include某些实现)要求的非常特定的顺序进行编译建立依赖关系后的文件)。

简而言之,如果可以的话,我建议使用 Projucer 生成项目并根据需要添加其他源文件,而不是相反。

于 2016-04-29T14:43:19.820 回答