【问题标题】:Objective-C: typedef NS_ENUM errorObjective-C: typedef NS_ENUM 错误
【发布时间】:2012-11-20 17:12:00
【问题描述】:

我在 iOS 应用程序中使用 typedef NS_ENUM 并收到此错误:“链接器命令失败,退出代码为 1”。通常这很容易修复,但这次我找不到解决方案......

这是我的 NS_Enum:

typedef NS_ENUM(NSInteger, MKIGridViewSelectionStyle)
            MKIGridViewSelectionStyle_SelectCellOnly = 1,
            MKIGridViewSelectionStyle_SelectCompleteRow = 2,
            MKIGridViewSelectionStyle_SelectCompleteColumn = 3;

编辑:

完整的消息:

ld /Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/Products/Debug-iphoneos/GridViewTest.app/GridViewTest 正常armv7s cd /Users/mki/Desktop/GridViewTest setenv IPHONEOS_DEPLOYMENT_TARGET 5.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 armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6。 0.sdk -L/Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/Products/Debug-iphoneos -F/Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/ Products/Debug-iphoneos -filelist /Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/Intermediates/GridViewTest.build/Debug-iphoneos/GridViewTest.build/Objects-normal/armv7s/GridViewTest.LinkFileList - dead_strip -fobjc-arc -fobjc-link-runtime -miphoneos-version-min=5.0 -framework QuartzCore -framework AudioToolbox -framework UIKit -framework Foundation -framework CoreGraphics -o /Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest -esfqwoooiarqpchfzsazwbgckmso/Build/Products/Debug-iphoneos/GridViewTest.app/Gr idViewTest

重复符号 _MKIGridViewSelectionStyle_SelectCellOnly 在: /Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/Intermediates/GridViewTest.build/Debug-iphoneos/GridViewTest.build/Objects-normal/armv7s/MKIViewController.o /Users/mki/Library/Developer/Xcode/DerivedData/GridViewTest-esfqwoooiarqpchfzsazwbgckmso/Build/Intermediates/GridViewTest.build/Debug-iphoneos/GridViewTest.build/Objects-normal/armv7s/MKIGridView.o ld:架构armv7s clang的3个重复符号:错误:链接器 命令失败,退出代码为 1(使用 -v 查看调用)

迈克

【问题讨论】:

  • 您将需要编辑您的问题以粘贴到链接器输出中。要找到它,请选择“视图”>“导航器”>“显示日志导航器”。然后单击日志导航器中最顶部的“Build YourTarget”行。然后查看日志并找到链接器输出。

标签: objective-c ios enums typedef


【解决方案1】:

您忘记在值定义周围使用大括号。

typedef NS_ENUM(NSInteger, MKIGridViewSelectionStyle) {
        MKIGridViewSelectionStyle_SelectCellOnly = 1,
        MKIGridViewSelectionStyle_SelectCompleteRow = 2,
        MKIGridViewSelectionStyle_SelectCompleteColumn = 3
};

【讨论】:

  • 还要确保“typedef”在那里,没有它你也会看到类似的重复符号错误。
猜你喜欢
  • 2015-01-27
  • 2012-12-14
  • 1970-01-01
  • 1970-01-01
  • 2014-05-30
  • 2017-10-30
  • 2014-12-04
  • 2017-04-01
相关资源
最近更新 更多