+ -
当前位置:首页 → 问答吧 → 用mingw32 gcc 一编译就出一大堆错误,应该怎么解决?

用mingw32 gcc 一编译就出一大堆错误,应该怎么解决?

时间:2008-10-21

来源:互联网

我是这样安装的mingw-gcc
代码:
sudo crossdev --gcc 4.1.2 --target i686-mingw32
没有报错。
test.cpp文件:
代码:
#include <iostream>

int main(int argc, char** argv)
{
 printf("Eat this!\n");
 return 0;
}
i686-mingw32-gcc test.cpp -o test.exe -I/usr/include/ 的时候报错如下:

代码:
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:171: 错误:‘::vfscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:172: 错误:‘::vscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:174: 错误:‘::vsscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:181: 错误:‘__gnu_cxx::vfscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:182: 错误:‘__gnu_cxx::vscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:184: 错误:‘__gnu_cxx::vsscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:152: 错误:‘::fwide’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:153: 错误:‘::fwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:154: 错误:‘::fwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:163: 错误:‘::swprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:164: 错误:‘::swscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:166: 错误:‘::vfwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:168: 错误:‘::vfwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:170: 错误:‘::vswprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:172: 错误:‘::vswscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:174: 错误:‘::vwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:176: 错误:‘::vwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:195: 错误:‘::wcstof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:206: 错误:‘::wprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:207: 错误:‘::wscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:253: 错误:‘::wcstold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:262: 错误:‘::wcstoll’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:263: 错误:‘::wcstoull’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:269: 错误:‘__gnu_cxx::wcstold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:270: 错误:‘__gnu_cxx::wcstoll’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:271: 错误:‘__gnu_cxx::wcstoull’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:163: 错误:‘::lldiv_t’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:169: 错误:‘::_Exit’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:176: 错误:‘::llabs’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:178: 错误:‘lldiv_t’ 没有命名一个类型
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:182: 错误:‘::lldiv’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:197: 错误:‘::strtof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:198: 错误:‘::strtold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:204: 错误:‘__gnu_cxx::lldiv_t’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:206: 错误:‘__gnu_cxx::_Exit’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:209: 错误:‘__gnu_cxx::llabs’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:210: 错误:‘__gnu_cxx::div’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:211: 错误:‘__gnu_cxx::lldiv’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:214: 错误:‘__gnu_cxx::strtof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:217: 错误:‘__gnu_cxx::strtold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwctype:90: 错误:‘::iswblank’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:44: 错误:‘_UPPER’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:45: 错误:‘_LOWER’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:46: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:47: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:48: 错误:‘_HEX’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:49: 错误:‘_SPACE’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_BLANK’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:52: 错误:‘_CONTROL’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:53: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:54: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:54: 错误:‘_DIGIT’ 在此作用域中尚未声明
davidwei@gfl /tmp $ i686-mingw32-gcc test.cpp -o test.exe -I/usr/lib/gcc/i686-mingw32/4.1.2/include/
/tmp/ccsMJTXT.o:test.cpp:(.text+0x23): undefined reference to `std::ios_base::Init::Init()'
/tmp/ccsMJTXT.o:test.cpp:(.text+0x3e): undefined reference to `std::ios_base::Init::~Init()'
collect2: ld 返回 1
davidwei@gfl /tmp $ i686-mingw32-gcc test.cpp -o test.exe -I/usr/include/
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:171: 错误:‘::vfscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:172: 错误:‘::vscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:174: 错误:‘::vsscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:181: 错误:‘__gnu_cxx::vfscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:182: 错误:‘__gnu_cxx::vscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdio:184: 错误:‘__gnu_cxx::vsscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:152: 错误:‘::fwide’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:153: 错误:‘::fwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:154: 错误:‘::fwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:163: 错误:‘::swprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:164: 错误:‘::swscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:166: 错误:‘::vfwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:168: 错误:‘::vfwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:170: 错误:‘::vswprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:172: 错误:‘::vswscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:174: 错误:‘::vwprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:176: 错误:‘::vwscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:195: 错误:‘::wcstof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:206: 错误:‘::wprintf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:207: 错误:‘::wscanf’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:253: 错误:‘::wcstold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:262: 错误:‘::wcstoll’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:263: 错误:‘::wcstoull’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:269: 错误:‘__gnu_cxx::wcstold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:270: 错误:‘__gnu_cxx::wcstoll’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwchar:271: 错误:‘__gnu_cxx::wcstoull’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:163: 错误:‘::lldiv_t’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:169: 错误:‘::_Exit’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:176: 错误:‘::llabs’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:178: 错误:‘lldiv_t’ 没有命名一个类型
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:182: 错误:‘::lldiv’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:197: 错误:‘::strtof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:198: 错误:‘::strtold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:204: 错误:‘__gnu_cxx::lldiv_t’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:206: 错误:‘__gnu_cxx::_Exit’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:209: 错误:‘__gnu_cxx::llabs’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:210: 错误:‘__gnu_cxx::div’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:211: 错误:‘__gnu_cxx::lldiv’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:214: 错误:‘__gnu_cxx::strtof’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cstdlib:217: 错误:‘__gnu_cxx::strtold’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/cwctype:90: 错误:‘::iswblank’ 尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:44: 错误:‘_UPPER’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:45: 错误:‘_LOWER’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:46: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:47: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:48: 错误:‘_HEX’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:49: 错误:‘_SPACE’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_BLANK’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:50: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:51: 错误:‘_DIGIT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:52: 错误:‘_CONTROL’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:53: 错误:‘_PUNCT’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:54: 错误:‘_ALPHA’ 在此作用域中尚未声明
/usr/lib/gcc/i686-mingw32/4.1.2/include/g++-v4/i686-mingw32/bits/ctype_base.h:54: 错误:‘_DIGIT’ 在此作用域中尚未声明
请问应该如何解决?多谢多谢。

作者: inadavid   发布时间: 2008-10-21

我也遇到了同样的问题,在Fedora 11 下编译 vocal 1.5 出来的错误

vocal 1.5 在fedora 8 下可以编译通过

大家看有没有什么办法??

作者: blackart   发布时间: 2009-09-18

鄙人不懂,不過請教一下,那個交叉編譯的東西不是放在/usr/i686-mingw32/usr下嗎?那么:
i686-mingw32-gcc test.cpp -o test.exe -I/usr/include/
這個語句是不是錯了,應該是-I/usr/i686-mingw32/usr/include/?

至於blackart也最好把你的操作過程和結果給出來參考一下吧。

作者: 亞利艾爾   发布时间: 2009-09-18