C++:从命令行链接有问题

Imr*_*ran 0 c++ linker

刚刚开始使用C++.我正在使用Eclipse CDT开发OSX.我有一个项目包含一些自定义类和两个文件"Test.hpp"和"Test.cpp" - 后者使用我的main()方法运行我在这两个文件中定义和实现的一些测试.

我可以在没有任何问题的情况下从Eclipse编译和运行,但是当我尝试使用"g ++ Test.cpp"从命令行进行编译时,我得到了很多链接错误,基本上列出了Test.cpp中定义或引用的所有方法未定义的符号.

我从命令行以类似的方式编译了一些基本程序(一个头文件和一个实现文件),没有任何问题,但我无法弄清楚为什么这个不能工作.请帮忙!

编辑:我的措辞不清楚,但是我也有其他源文件.接受的答案就是诀窍:"g ++ Test.cpp Other1.cpp Other2.cpp".谢谢.

Cor*_*win 5

命令'g ++ Test.cpp'同时进行编译和链接.如果你有很多源文件,你应该将Test.cpp与'g ++ Test.cpp other1.cpp other2.cpp'链接起来,或者只是编译所有文件并将它们全部链接在一起,就像'g ++ Test.o other1.o other2的.o".