在 Xcode 7.01 上C++ 关于 El Capitan 错误 -> 体系结构的未定义符号 x86_64:

C++ on Xcode 7.01 on El Capitan Error -> Undefined symbols for architecture x86_64:

本文关键字:体系结构 gt 未定义 符号 x86 Xcode C++ 关于 错误 Capitan El      更新时间:2023-10-16
Undefined symbols for architecture x86_64:
  "makeHero(std::string, int)", referenced from:
   makeCard() in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

这是我得到的错误,当我试图在Xcode上编译我的代码。我已经环顾四周,我已经将架构设置更改为通用,并制作了c++标准库,libstdc++,这是我在这里找到的答案。/

 #include <iostream>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string>
using namespace std;

我的main.cpp文件的开头是什么引起的?我将stdlib.h和stdio.h更改为没有。h,我得到stdlib文件未找到

架构x86_64的未定义符号

这个错误信息是相当误导的,它真正告诉你的是编译器看到了makeHero(std::string, int)的函数声明(symbol),但找不到它的实现。

通过在头文件中声明函数,而无需在头文件或cpp中实现函数体,可以很容易地重现该错误。

要解决这个问题,请确保函数体在项目中实现。