【问题标题】:Apple Mach-O Linker Error Xcode 4.5.2Apple Mach-O 链接器错误 Xcode 4.5.2
【发布时间】:2012-12-31 12:52:24
【问题描述】:

我正在考虑从头开始重建项目,我想避免这种情况,所以我寻求帮助。

当尝试在发布时构建项目时,我收到以下链接错误:

Ld /Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Products/Release-iphoneos/MyStreamPlayer.app/MyStreamPlayer 正常armv7 cd /Users/MAS/iphoneApps/AlfsreamPlayer/MyStreamPlayer setenv IPHONEOS_DEPLOYMENT_TARGET 6.0 setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.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 armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -L/Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Products/Release-iphoneos -L/Users/MAS/iphoneApps/AlfsreamPlayer/MyStreamPlayer -L/Users/MAS/iphoneApps/AlfsreamPlayer/MyStreamPlayer/../build -F/Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/产品/发布-iphoneos -filelist /Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Intermediates/MyStreamPlayer.build/Release-iphoneos/MyStreamPlayer.build/Objects-normal/armv7/MyStreamPlayer.LinkFileList -Xlinker -map -Xlinker /Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Intermediates/MyStreamPlayer.build/Release-iphoneos/MyStreamPlayer.build/MyStreamPlayer-LinkMap-normal-armv7.txt -dead_strip -finalize -prefinalized-library libViewRightWebiOS.a -finalized-product /Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Products/Release-iphoneos/MyStreamPlayer.app/MyStreamPlayer -libVideoWebiOS -fobjc-link-runtime -miphoneos-version-min=6.0 -framework Foundation -framework UIKit -framework CoreGraphics -framework MediaPlayer -framework CFNetwork -libVideoWebiOS_debug -libVideoWebiOS -o /Users/MAS/Library/Developer/Xcode/DerivedData/ MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Products/Release-iphoneos/MyStreamPlayer.app/MyStreamPlayer

clang:错误:没有这样的文件或目录: '/Users/MAS/Library/Developer/Xcode/DerivedData/MyStreamPlayer-auylvnjdlrkfpvaxnulcaadbfhwl/Build/Products/Release-iphoneos/MyStreamPlayer.app/MyStreamPlayer'

调试模式没有问题。该项目在 xcode 4.5.1 上的另一台计算机上运行良好。我认为 xcode 版本可能是问题,但是当我在另一台使用 xcode 4.5.1 的计算机上尝试时,我遇到了同样的问题。

该项目使用库libVideoWebiOS。我在 Build Phases -> Link Binary With Libraries 上有它。知道这个问题会产生什么吗?这是构建设置的屏幕截图 -> 架构。

Change "Build Active Architecure Only" to Yes 有很多建议,但不幸的是,这对我不起作用。

【问题讨论】:

  • iOS 部署目标是什么?
  • @codingNinja iOS 部署目标设置为 6.0
  • 我猜您丢失了一些文件,如果您的文件没有 red 标记,请检查您的 project。检查这个No Such File Or Directory
  • @arthan.v,是的,我在产品文件夹中有一个名为 libVeri.a 的文件标记为红色。不幸的是,通过链接中的步骤并没有解决它。
  • 要集成verimatrix cpm lib,您需要在构建发布版本之前安装Finializer。请联系您的供应商以获取集成工具和文档。

标签: ios xcode xcode4.5


【解决方案1】:

Ron 是正确的,您必须先使用 Finalizer,然后才能创建发布版本。确保您已关闭 Xcode 以使终结器工作。

【讨论】:

    【解决方案2】:

    根据您的评论,您的project 中似乎有multiple targets。如果您使用任何third party librarieswrapper classes,请不要导入project。仅添加所需的files and folders。我不知道如何在具有multiple targetsrelease 模式下制作项目。但是使用target 制作您的项目可能会解决您的问题。

    删除third party project.xcodeprojreferences 并添加source filesproject 中您需要什么。希望对您有所帮助。

    【讨论】:

    • 是的,项目中有多个目标。它需要它才能工作。知道为什么它可以在一台电脑上工作,但不能在其他电脑上工作吗?
    • 如果它在一台 PC 上运行,请检查您在 xcode 项目中添加的文件,是否在您的项目源中。有时我们可能会在另一个位置引用files,而忘记将其复制到我们的源代码目录中。
    猜你喜欢
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    • 2015-09-02
    • 2013-06-29
    • 2014-04-06
    • 2023-03-30
    • 1970-01-01
    相关资源
    最近更新 更多