Ios 为什么有些库需要嵌入而有些库不需要嵌入?

Ios 为什么有些库需要嵌入而有些库不需要嵌入?,ios,xcode,webrtc,Ios,Xcode,Webrtc,在ios中,我不明白为什么有些库需要嵌入(比如WebRTC),而有些库不需要嵌入(比如facebook)?facebook的框架是静态库。这在iOS中有点不寻常;大多数东西都是动态库。静态库是在构建时而不是在加载时链接的,所以您不需要嵌入它们。谢谢!您知道如何(手动)在项目(不是用xcode制作)中嵌入动态库吗?我们是否只需要使用应用程序部署库?如果您是手动构建库,则需要将库放在链接到的目录中(相对于@rpath)。通常是在框架中,但这取决于你如何构建你的应用程序otool-L将告诉您它希望从何

在ios中,我不明白为什么有些库需要嵌入(比如
WebRTC
),而有些库不需要嵌入(比如
facebook
)?

facebook的框架是静态库。这在iOS中有点不寻常;大多数东西都是动态库。静态库是在构建时而不是在加载时链接的,所以您不需要嵌入它们。

谢谢!您知道如何(手动)在项目(不是用xcode制作)中嵌入动态库吗?我们是否只需要使用应用程序部署库?如果您是手动构建库,则需要将库放在链接到的目录中(相对于@rpath)。通常是在框架中,但这取决于你如何构建你的应用程序<应用程序上的code>otool-L将告诉您它希望从何处加载库。我刚刚完成了,otool-L ALLiveVideoChatClient.app/ALLiveVideoChatClient返回我:@rpath/WebRTC.framework/WebRTC(兼容版本0.0.0,当前版本0.0.0)。。。。@rpath的值是多少?我确实像你说的那样,将库放在Frameworks(ALLiveVideoChatClient.app/Frameworks/WebRTC.framework/WebRTC)中,但它在加载时总是失败,原因是:@rpath/WebRTC.framework/WebRTC:image not found:(因此,也许我的rpath不好,但如何从链接器更新它?我总是收到以下错误:DYLD,库未加载:@rpath/WebRTC.framework/WebRTC | Referenced from:/var/containers/Bundle/Application/E60EAD9F-0CB6-4B13-80B3-3ED71B562BAB/ALLiveVideoChatClient.app/ALLiveVideoChatClient |原因:找不到图像,但我很好地复制了库。)y在ALLiveVideoChatClient.app/Frameworks/WebRTC.framework/WebRTC中,那么我做错了什么?也许我需要设置@rpath?如何检查它的值?如果链接有问题,你会想提出一个新问题,解释你是如何构建的以及遇到了什么问题。