在unix上找不到c ++库

Ros*_*one 1 c++ unix

我写了一个简单的c ++程序test.cpp:

#include <iostream>
#include <string>

using namespace std;

int main() {
  string s;
  cin >> s;
  cout << s << endl;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么runnning gcc test.cpp -o mytest会给我这些错误,还有更多?

Undefined symbols for architecture x86_64:
  "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()", referenced from:
      _main in cc8rGYVq.o
  "std::cin", referenced from:
      _main in cc8rGYVq.o
Run Code Online (Sandbox Code Playgroud)

Ern*_*ill 9

不要使用命名的可执行文件gcc来编译和链接C++程序; 你必须使用g++.它不仅选择了适当的编译器选项,还链接到适合您语言的正确库(这是您在这里遇到的问题.)