Потому, что gcc - компилятор языка C. Используйте g++.
Upd.
Ошибку выбивает потому, что вы не подключили библиотеку libstdc++, в которой определены string и другие объекты стандартной библиотеки:
gcc file_name.cpp -lstdc++
Просто, msvc++
и g++
делают это автоматически.