Dav*_*ard 5 native duplicates static-libraries unity-game-engine ios
我正在为Unity3D使用fmod插件.编译到Windows和OSX很好,因为我可以动态加载DLL/dylib.当我为iOS编译时出现问题.我用
[DllImport("__Internal")]
Run Code Online (Sandbox Code Playgroud)
因为iOS需要静态链接库.当我编译虽然我得到了
SystemException: Duplicate native method found : FMOD_System_CreateSound. Please check your source carefully.
Run Code Online (Sandbox Code Playgroud)
我很确定我不会复制这个符号.我认为这可能是因为Unity本身导入FMOD并且两者可能正在发生碰撞...但如果是这种情况,我很惊讶FMOD_System_CreateSound是第一个被抓住的人.有没有解决的办法?谢谢!
一如既往,我很乐意提供任何其他细节!
这是一个导致错误的 示例项目:使用FMod的示例Unity项目
编辑:冲突是由iOS引起的,即使它们没有相同的签名,也不允许函数具有相同的名称.删除相同名称的函数(因此删除了一些我不需要的FMOD功能)后,我可以编译到iOS,但正如预期的那样,我在初始化时仍然会收到错误,因为Unity已经初始化了FMOD.
参考您的编辑并查看示例后,确实不能有两个同名的方法,因为编译器将无法识别链接到哪个方法。
简单的解决办法就是明显地以不同的方式命名它们。
至于初始化,如果您可以访问Unity 3D已经创建的FMOD,那么您不必重新初始化它。
我假设指向该对象的指针足以删除重复的初始化。希望这一点是清楚的。
| 归档时间: |
|
| 查看次数: |
1868 次 |
| 最近记录: |