在尝试运行项目时,我会遇到以下错误,我可以使用一些帮助。
我的项目已经通过应用内购买发布。
在最新版本中,我尝试将IAP合并到另一个 View Controller 中,但是当我要运行时,也会遇到两个Apple Mach-O Linker Error和一个Dsymutil Error。
自上次发布以来,我可能已经将Xcode(更新为4.6(4H127)版),但是我不确定。
我已经检查过的一些东西:
全局变量在.h文件中声明,该文件在需要它的 View Controller 中导入:
extern NSArray * _products;
我不确定我的外部框架/库是否会造成任何麻烦。他们之前工作得很好:TestFlight,Appirater,CHCSVParser。
错误:
Ld "/Users/jaspervandermaarel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator/Mijn Kinderen.app/Mijn Kinderen" normal i386 cd "/Users/jaspervandermaarel/Documents/Xcode projects/Mijn Kinderen" setenv IPHONEOS_DEPLOYMENT_TARGET 5.0 setenv 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/iPhoneSimulator6.1.sdk -L/Users/jaspervandermaarel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator "-L/Users/jaspervandermaarel/Documents/Xcode projects/Mijn Kinderen/TestFlightSDK1-1" "-L/Users/jaspervandermaarel/Documents/Xcode projects/Mijn Kinderen" -F/Users/jaspervandermaarel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator -filelist "/Users/jaspervandermaarel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Intermediates/Mijn Kinderen.build/Debug-iphonesimulator/Mijn Kinderen.build/Objects-normal/i386/Mijn Kinderen.LinkFileList" -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=5.0 -weak_framework Accounts -weak_framework Social -framework SystemConfiguration -framework CFNetwork -framework StoreKit -framework MessageUI -lz -framework UIKit -framework Foundation -framework CoreGraphics -framework CoreData -lTestFlight -o "/Users/jaspervandermaarel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator/Mijn Kinderen.app/Mijn Kinderen"
体系结构i386的 undefined symbol :“__ products”,引用自:
-MKGebeurtenissenViewController.o中的[MKGebeurtenissenViewController voegToeGebeurtenis:]
-MKGebeurtenissenViewController.o中的[MKGebeurtenissenViewController alertView:clickedButtonAtIndex:]
-MKKinderenViewController.o中的[MKKinderenViewController alertView:clickedButtonAtIndex:]
-MKKinderenViewController.o中的[MKKinderenViewController产品购买:]
-MKKinderenViewController.o中的[MKKinderenViewController voegKindToe:]
-MKGebeurtenissenViewController.o中的[MKGebeurtenissenViewController voegToeGebeurtenis:]
-MKGebeurtenissenViewController.o中的[MKGebeurtenissenViewController alertView:clickedButtonAtIndex:]
-MKKinderenViewController.o中的[MKKinderenViewController alertView:clickedButtonAtIndex:]
-MKKinderenViewController.o中的[MKKinderenViewController产品购买:]
-MKKinderenViewController.o中的[MKKinderenViewController voegKindToe:]
ld:找不到体系结构i386的符号
铛:错误:链接器命令失败,退出代码为1(使用-v查看调用)
GenerateDSYMFile“/Users/jaspervandermaarelel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator/Mijn Kinderen.app.dSYM”“/Users/Data/Develops/DeskedData/M/dglsdifvjduysjbpixoiuyaekgky/构建/产品/Debug-iphonesimulator/Mijn Kinderen.app/Mijn Kinderen”
cd“/用户/jaspervandermaarelel/文档/Xcode项目/Mijn Kinderen”
setenv 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/dsymutil“/Users/jaspervandermaarelel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/phones/ulator .app/Mijn Kinderen“-o”/用户/Jaspervandermaarelel/库/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator/Mijn Kinderen.app.dSYM“
错误:无法打开可执行文件'/Users/jaspervandermaarelel/Library/Developer/Xcode/DerivedData/Mijn_Kinderen-dglsdifvjduysjbpixoiuyaekgky/Build/Products/Debug-iphonesimulator/Mijn Kinderen.app/Mijn Kinderen'
最佳答案
并不是说“extern
”很糟糕,您只需要在某个地方的.m文件顶部声明实际的“NSArray
”,否则该对象实际上并没有分配到任何地方。
因此,如果在.h文件中声明“extern
”变量,请在支持该.h文件的.m文件顶部声明实际变量。
例如。
NSArray * _products;
在“
@implementation
”位之前。并确保在.m文件中的某个位置进行该变量的分配和初始化。
关于xcode - 体系结构i386的 undefined symbol : “__products” , referenced from:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15797315/