ld:找不到架构x86_64 clang的符号:错误:

时间:2018-09-17 15:50:02

标签: c++ eclipse macos

这是针对使用Eclipse的Mac

#include <iostream>
using namespace std;

int main() {
 cout << "!!!Hello, world!!!" << endl;
 return 0;
}

这是编译器的输出:

Invoking: MacOS X C++ Linker g++ -o "Lab2" ./secondlab.o
Undefined symbols for architecture x86_64: "_main", referenced from: implicit entry/start for main executable ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Lab2] Error 1

1 个答案:

答案 0 :(得分:-2)

您需要做的就是在CDT / eclipse下正确配置C ++链接器,必须在下面的文本字段中输入“ sndfile”:

  

项目->属性-> C / C ++构建->设置-> Mac OS C ++   链接器->库->“库-l”

“-l” 自动添加到“ sndfile”中,以创建“ -lsndfile”

但是,将编译器指向正确的包含目录(包含“ sndfile.h”)也很重要。我猜大多数安装会将其安装到“ / usr / local / include”中。 对于CDT / eclipse中的C ++项目,需要在其中输入

  

项目->属性-> C / C ++构建->设置-> GCC C ++   编译器->包含->“包含路径(-l)”

请确实查看this线程。