【问题标题】:ld: building for iOS Simulator, but linking against dylib built for MacOSX file 'RemObjectsSDK.framework/RemObjectsSDK' for architecture i386ld:为 iOS 模拟器构建,但链接到为 MacOSX 文件“RemObjectsSDK.framework/RemObjectsSDK”构建的 dylib,用于架构 i386
【发布时间】:2014-10-25 00:17:20
【问题描述】:

我是 iOS 开发新手,最近更新到 OS X YosemiteXcode 6,所以我尝试将我的应用更新到 iOS 8.1

问题是我有一个在 iOS 7.1 上运行的项目,它是在 Xcode 5.1OS X 10.8.5 上制作的Xcode 的 RemObjects 数据摘要 - 7.0.63.1055

我更新了应用程序以在 iOS 8.1 中运行,当我尝试编译我的项目时出现以下错误:

Ld /Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Products/Debug-iphonesimulator/IC4.app/IC4 normal i386
cd /Users/ingenieria/Desktop/04/OMEGA/iSIREPolProyect
export IPHONEOS_DEPLOYMENT_TARGET=8.1
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/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/iPhoneSimulator8.1.sdk -L/Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Products/Debug-iphonesimulator -L/Developer/RemObjects\ Software/Bin/iOS/Debug-iphonesimulator -F/Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Products/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -F/Users/ingenieria/Desktop/04/OMEGA/iSIREPolProyect -F/Developer/RemObjects\ Software/Bin/Debug -filelist /Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Intermediates/IC4.build/Debug-iphonesimulator/IC4.build/Objects-normal/i386/IC4.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -all_load -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=8.1 -Xlinker -sectcreate -Xlinker __TEXT -Xlinker __entitlements -Xlinker /Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Intermediates/IC4.build/Debug-iphonesimulator/IC4.build/IC4.app.xcent -framework DataAbstract -framework RemObjectsSDK -framework MessageUI -framework SystemConfiguration -framework StoreKit -framework Social -framework Parse -framework Security -framework QuartzCore -framework OpenGLES -framework MobileCoreServices -framework CoreVideo -framework CoreMedia -framework CoreLocation -framework CoreGraphics -framework CoreAudio -framework CFNetwork -framework AVFoundation -framework ShinobiGrids -framework AudioToolbox -framework AdSupport -framework Accounts -framework UIKit -framework Foundation -lz.1.1.3 -lz.1.2.5 -lz.1 -lz -lsqlite3.0 -lsqlite3 -liconv.2.4.0 -liconv.2 -liconv -Xlinker -dependency_info -Xlinker /Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Intermediates/IC4.build/Debug-iphonesimulator/IC4.build/Objects-normal/i386/IC4_dependency_info.dat -o /Users/ingenieria/Library/Developer/Xcode/DerivedData/IC4-bjbysgznhpelujdvlqbfkmfrckyx/Build/Products/Debug-iphonesimulator/IC4.app/IC4

ld: building for iOS Simulator, but linking against dylib built for MacOSX file '/Developer/RemObjects Software/Bin/Debug/RemObjectsSDK.framework/RemObjectsSDK' for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我已经用 RemObjects Data Abstract for Cocoa - 8.1.85.1143 - Trial 进行了尝试,但错误仍然相同,我该怎么办?

ps:这一切都是在我更新代码后发生的,因为代码已弃用。

编辑:我已经多次清理和构建项目,但仍然出现错误

谢谢!

【问题讨论】:

    标签: xcode6 remobjects ios8.1 dataabstract


    【解决方案1】:

    在构建项目时,您正在尝试链接 /Developer/RemObjects Software/Bin/Debug/RemObjectsSDK.framework(无论是什么)。您的项目是一个 iOS 模拟器应用程序,该框架是一个 OS X 框架。您不能在 iOS 模拟器应用中使用 OS X 二进制文件,因为它们不兼容。

    在旧版本的 iOS 上,您会遇到运行时错误(值不正确或崩溃)。在 iOS 8.0 上,这变成了链接时错误。

    您需要为 iOS 模拟器构建一个版本的 RemObjectsSDK.framework。

    【讨论】:

    • 感谢@Jeremy Huddleston Sequoia,在进行了一些研究后,我发现了一些熟悉的东西,所以我继续查看 RemObjects wiki,并找到了一篇关于如何链接 iOS 框架的文章 - Article但是现在还有另一个问题... 找不到文件。 我已经清理并重新制作了上面文章中的过程,但出现了同样的错误
    • 你需要设置FRAMEWORK_SEARCH_PATHS或者HEADER_SEARCH_PATHS才能找到header。
    • Framework Search Paths 我有:$inherited、$(DEVELOPER_FRAMEWORKS_DIR、$(PROJECT_DIR)、/Developer/Parse 和 /Developer/FacebookSDK。对于 Header Search路径我有“/Developer/RemObjects Software/Source”。对于库搜索路径我有“/Developer/RemObjects Software/Bin/iOS/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) " 仍然是同样的错误。
    • 我怀疑由于路径中的空间问题,您遇到了问题。确保正确引用。另外,那个文件真的存在吗?
    • 感谢您的帮助,@Jeremy 看来我必须在 Target项目,我清理了项目并构建它并且它工作......我想这是一个新手错误。
    猜你喜欢
    • 1970-01-01
    • 2013-09-11
    • 2014-05-30
    • 2013-10-06
    • 2021-01-27
    • 2021-01-07
    • 2011-11-02
    • 2022-06-23
    • 2021-12-25
    相关资源
    最近更新 更多