2012-04-12 7 views
0

Ich habe eine bestehende Klasse namens RootViewController zu meinem Projekt hinzugefügt, an dem ich gerade arbeite. Das Projekt kompilierte das erste Mal, aber das zweite Mal, als ich versuchte, es auszuführen, tauchte der Mach-o-Linker-Fehler auf. Ich habe keinen Code geändert, damit das passiert, also weiß ich nicht wirklich, was los ist. Ich weiß, dass dieser Fehler in der Regel auf ein fehlendes Framework zurückzuführen ist, aber ich bin mir ziemlich sicher, dass ich alle Frameworks, die ich brauche, enthalten habe. HierApple Mach-O-Linker (ID) Fehler

ist das Protokoll:

Ld /Users/myusername/Library/Developer/Xcode/DerivedData/coredataproject-dhlbawbtzwdgohaczdnalonzhnhs/Build/Products/Debug-iphonesimulator/coredataproject.app/coredataproject normal i386 
cd /Users/myusername/Desktop/coredataproject 
setenv MACOSX_DEPLOYMENT_TARGET 10.6 
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/iPhoneSimulator5.0.sdk -L/Users/myusername/Library/Developer/Xcode/DerivedData/coredataproject-dhlbawbtzwdgohaczdnalonzhnhs/Build/Products/Debug-iphonesimulator -F/Users/myusername/Library/Developer/Xcode/DerivedData/coredataproject-dhlbawbtzwdgohaczdnalonzhnhs/Build/Products/Debug-iphonesimulator -filelist /Users/myusername/Library/Developer/Xcode/DerivedData/coredataproject-dhlbawbtzwdgohaczdnalonzhnhs/Build/Intermediates/coredataproject.build/Debug-iphonesimulator/coredataproject.build/Objects-normal/i386/coredataproject.LinkFileList -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50000 -framework UIKit -framework Foundation -framework CoreGraphics -framework CoreData -framework CoreLocation -framework MapKit -o /Users/myusername/Library/Developer/Xcode/DerivedData/coredataproject-dhlbawbtzwdgohaczdnalonzhnhs/Build/Products/Debug-iphonesimulator/coredataproject.app/coredataproject 

Undefined symbols for architecture i386: 
    "_OBJC_CLASS_$_RootViewController", referenced from: 
     objc-class-ref in FirstViewController.o 
     objc-class-ref in AppDelegate.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

ich gesucht habe um stundenlang versuchen, eine fehlende Verbindung oder Hinweis zu finden, aber ich habe nichts falsch sehen. Jede Hilfe würde sehr geschätzt werden.

+0

Offenbar verweisen AppDelegate und FirstViewController auf einen RootViewController, der sich nicht in Ihrem Projekt befindet. Benötigt die vorhandene Klasse, die Sie hinzugefügt haben, auch RootViewController? – mttrb

+0

Sorry, ich hätte genauer sein sollen. RootViewController ist die vorhandene Klasse, die ich hinzugefügt habe, also ist sie definitiv da. – michael03m

+0

Es scheint definitiv der RootViewController zu sein, der nicht in Ihr Projekt kompiliert wird. Haben Sie versucht, ein Clean zu machen und dann das Projekt neu aufzubauen? – mttrb

Antwort

1

Ich habe es gerade behoben. Ich kopierte den Code aus RootViewController, löschte die .h und .m-Dateien vollständig, erstellte neue Dateien und änderte den Namen in RootViewController und fügte den Code wieder ein. Er kompilierte dann.

Verwandte Themen