【发布时间】:2017-01-02 10:50:19
【问题描述】:
我在尝试将框架链接到我的测试项目时遇到问题...
我确实了解 CocoaPods 的工作原理,而我试图从这些文件中链接实际框架的原因超出了这个问题的范围。
在我的 CocoaPods“Podfile”中,我有以下内容。
# Uncomment this line to define a global platform for your project
platform :ios, '8.0'
target 'GasAPI' do
platform :ios, '8.0'
use_frameworks!
pod "Alamofire"
pod "SwiftyJSON"
target 'GasAPITests' do
inherit! :search_paths
# Pods for testing
pod "Alamofire"
pod "SwiftyJSON"
end
end
但是,每当我执行“pod install”时,如果我进入“Pods”项目的项目设置,“Base SDK”就会更改为“Latest OS X”。
我已确保所有“目标”都将“最新 iOS (iOS 9.3) 作为其基础 SDK。
但是,当我尝试将其中一个文件链接到我的测试项目时,我收到一个链接器错误,在我看来,它正在寻找 OS X 库,而不是 iOS 库。
这是我得到的最新错误:
Ld /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator/GasApiTestProject2.app/GasApiTestProject2 normal i386
cd /Users/brent/Dropbox/NJVC/API/GasApiTestProject2
export IPHONEOS_DEPLOYMENT_TARGET=9.3
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk -L/Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator -F/Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator -filelist /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=9.3 -Xlinker -no_deduplicate -Xlinker -objc_abi_version -Xlinker 2 -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator -Xlinker -add_ast_path -Xlinker /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2.swiftmodule -framework GasAPI -framework Result -framework SwiftyJSON -framework Moya -framework Alamofire -framework ReachabilitySwift -framework SwiftyBeaver -framework SwiftyRSA -framework Quick -framework Nimble -Xlinker -dependency_info -Xlinker /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Intermediates/GasApiTestProject2.build/Debug-iphonesimulator/GasApiTestProject2.build/Objects-normal/i386/GasApiTestProject2_dependency_info.dat -o /Users/brent/Library/Developer/Xcode/DerivedData/GasAPI-gsmqzrqwzjzvuhdhmovzfhwbfbow/Build/Products/Debug-iphonesimulator/GasApiTestProject2.app/GasApiTestProject2
ld: framework not found Result
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我已经尝试删除所有 Pod 并重建并将它们重新添加到项目中,它似乎仍然希望默认为 OS X。
我在 OS X 10.11.6 上运行 Xcode v7.3.1 并使用 CocoaPods v1.0.1
我找到了很多关于如何链接 iOS 和 OS X 项目的资源,但这不是问题所在。看起来我的链接器正在寻找不应该的架构。
我需要做什么才能克服这个错误?
谢谢!
【问题讨论】:
标签: ios swift xcode cocoapods linker-errors