1

I am trying to compile a c++ program which works fine in Xcode but gives error in terminal.

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;
}

Error i get

 "Example::show()", referenced from:
      _main in cckpIa3V.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

I am compiling using g++

g++ -o test main.cpp 
4

1 に答える 1

2

でリンクしていませんexample.o。コマンド ライン/Makefile は表示されないため、(大まかに) 次のように入力する必要があります。

$ g++ -o example main.cpp example.cpp

これにより、ソース ファイルがコンパイルされ、.xml という実行可能ファイルにリンクされexampleます。

于 2013-03-05T15:09:13.690 に答える