http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47241
--- Comment #17 from Dongsheng Song <dongsheng.song at gmail dot com> 2011-02-15 02:46:14 UTC --- It seems that libstdc++.dll.a is too small: $ file gcc-4.6-windows_i686-linux/i686-w64-mingw32/lib/libstdc++.dll.a gcc-4.6-windows_i686-linux/i686-w64-mingw32/lib/libstdc++.dll.a: current ar archive $ ls -l gcc-4.6-windows_i686-linux/i686-w64-mingw32/lib/libstdc++.dll.a -rwxr-xr-x 1 oracle dba 2260 Feb 15 10:34 gcc-4.6-windows_i686-linux/i686-w64-mingw32/lib/libstdc++.dll.a $ i686-w64-mingw32-g++ Hello.cpp gcc-4.6-windows_i686-linux/i686-w64-mingw32/lib/libstdc++.dll.a /tmp/cc39V2U9.o:Hello.cpp:(.text+0x19): undefined reference to `std::cout' /tmp/cc39V2U9.o:Hello.cpp:(.text+0x1e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)' /tmp/cc39V2U9.o:Hello.cpp:(.text+0x26): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)' /tmp/cc39V2U9.o:Hello.cpp:(.text+0x2e): undefined reference to `std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))' /tmp/cc39V2U9.o:Hello.cpp:(.text+0x47): undefined reference to `std::ios_base::Init::~Init()' /tmp/cc39V2U9.o:Hello.cpp:(.text+0x6a): undefined reference to `std::ios_base::Init::Init()' collect2: ld returned 1 exit status