动态库加载问题:在另一个自定义框架中嵌入自定义框架时出现“库未加载”错误

问题描述 投票:0回答:1

尝试将

dyld[8942]: Library not loaded
嵌入
PaymentSampleFramework
中,并且仅在主应用程序中链接
POSSampleFramework
时,我遇到了 dyld 错误 (
POSSampleFramework
)。错误如下:

dyld[8942]: Library not loaded: @rpath/PaymentSampleFramework.framework/PaymentSampleFramework
Referenced from: <99DE58BE-5611-3397-BED2-6D7DDCE5A878> /private/var/containers/Bundle/Application/B4CB8F71-F8A7-4A21-8C1B-170612C3C628/ParentApp.app/ParentApp
Reason: tried: '/usr/lib/swift/PaymentSampleFramework.framework/PaymentSampleFramework' (no such file, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/PaymentSampleFramework.framework/PaymentSampleFramework' (no such file), '/private/var/containers/Bundle/Application/B4CB8F71-F8A7-4A21-8C1B-170612C3C628/ParentApp.app/Frameworks/PaymentSampleFramework.framework/PaymentSampleFramework' (no such file), '/usr/lib/swift/PaymentSampleFramework.framework/PaymentSampleFramework' (no such file, not in dyld cache), '/private/preboot/Cryptexes/OS/usr/lib/swift/PaymentSampleFramework.framework/PaymentSampleFramework' (no such file), '/private/var/containers/Bundle/Application/B4CB8F71-F8A7-4A21-8C1B-170612C3C628/ParentApp.app/Frameworks/PaymentSampleFramework.framework/PaymentSampleFramework' 

仅当

PaymentSampleFramework
未直接添加到应用程序时才会出现该错误。我只想在应用程序端包含
POSSampleFrameWork
,其中包含
PaymentSampleFramework

我已将 GitHub 链接分享到我的工作区以供参考:GitHub 存储库(在应用程序内添加了 PaymentSampleFramework 以避免崩溃)

我正在寻求有关是否可以仅嵌入

POSSampleFrameWork
而不添加所有内部依赖项的建议。任何解决此问题的建议或解决方案将不胜感激。

ios swift frameworks linker-errors
1个回答
0
投票

一个潜在的解决方案是使内部库静态。这将消除在应用程序端包含所有内部依赖项的需要。

我们应该考虑任何替代解决方案吗?这种方法是否有潜在的副作用?

© www.soinside.com 2019 - 2024. All rights reserved.