[英]Linker error in Xcode?
当我尝试在模拟器上运行我的应用程序时,出现一个奇怪的错误。 错误在以下代码/文件内。 (我不确定这叫什么):
Undefined symbols for architecture i386:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
上面的错误有两个部分以红色突出显示; "_main", referenced from:
和linker command failed with exit code 1 (use -v to see invocation)
。
我以前从未遇到过此错误。 因此,我无法修复它。 如果有必要,这是我的代码:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBOutlet weak var strWordValue: UILabel!
@IBOutlet weak var strInputField: UITextField!
func textFieldShouldReturn(textField: UITextField) -> Bool{
textField.resignFirstResponder()
let word = textField.text
let score = scoreForWord(word)
return true
}
var TextField: UITextField!
private let alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]
func valueOfLetter(letter: Character) -> Int
{
let letterString = String(letter).uppercaseString
let index = find(alphabet, letterString)
return index != nil ? index! + 1 : 0
}
func scoreForWord(word: String) -> Int
{
let characters = Array(word)
return characters.reduce(0) { sum, letter in sum + self.valueOfLetter(letter) }
}
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool
{
let currentWord = textField.text as NSString
let newWord = currentWord.stringByReplacingCharactersInRange(range, withString: string)
let score = scoreForWord(newWord)
return true
}
}
请说明此错误的含义。
这个错误消息已经在几个月前发生在我身上。 您的库不支持模拟器。 您需要在实际设备上而不是模拟器上运行。
这意味着实现main()函数的文件未链接到可执行文件中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.