我正在尝试编译一个在Xcode中工作正常但在终端中出错的c ++程序。
的main.cpp
int main(int argc, const char * argv[])
{
Example* example =new Example();
example->show();
}
example.h文件
class Example {
public:
void show();
};
example.cpp
void Example::show() {
std::cout<<"Hello World"<<std::endl;
}
我得错误
"Example::show()", referenced from:
_main in cckpIa3V.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
我正在使用g ++进行编译
g++ -o test main.cpp
答案 0 :(得分:2)
您未在example.o
中进行关联。您没有显示命令行/ Makefile,因此这是(大致)您需要键入的内容:
$ g++ -o example main.cpp example.cpp
这将编译源文件并将其链接到名为example
的可执行文件。