我在向我的 xcode 子项目共享静态库时遇到问题。假设我的项目结构是这样的:
Main.xcodeproj
|
|_Cordova.xcodeproj
|
|_SubProject1.xcodeproj
|
|_SubProject2.xcodeproj
我已经为以下内容创建了静态库:
- 子项目1
- 子项目2
这些库需要与 Cordova 静态库链接。
我通过以下方式做到了这一点:
- 打开子项目1
- 在“Link Binary With Libraries”部分添加 Cordova 静态库
然后
- 打开子项目2
- 在“Link Binary With Libraries”部分添加 Cordova 静态库
之后,
- 打开 Main.xcodeproj
- 为 SubProject1 添加目标依赖
- 为 SubProject2 添加目标依赖
- 为 SubProject1 静态库添加带库的链接二进制文件
- 为 SubProject2 静态库添加带库的链接二进制文件
如果我构建我会收到以下错误:
duplicate symbol _OBJC_IVAR_$_CDVViewController._commandQueue in:
/Users/xxx/Library/Developer/Xcode/DerivedData/appxxx/Build/Products/Debug-iphonesimulator/libSubProject1.a(CDVViewController.o)
/Users/xxx/Library/Developer/Xcode/DerivedData/appxxx/Build/Products/Debug-iphonesimulator/libSubProject2.a(CDVViewController.o)
duplicate symbol _OBJC_IVAR_$_CDVViewController._commandDelegate in:
/Users/xxx/Library/Developer/Xcode/DerivedData/appxxx/Build/Products/Debug-iphonesimulator/libSubProject1.a(CDVViewController.o)
/Users/xxx/Library/Developer/Xcode/DerivedData/appxxx/Build/Products/Debug-iphonesimulator/libSubProject2.a(CDVViewController.o)
我如何在这两个子项目中共享这个库?
非常感谢