• 7881阅读
  • 5回复

求助:qt-win-opensourse-4.3.4 mingw编译qt库时出现错误,请问如何解决? [复制链接]

上一主题 下一主题
离线dream_y06
 

只看楼主 正序阅读 楼主  发表于: 2008-04-05
求助:qt-win-opensourse-4.3.4 mingw编译qt库时出现错误,请问如何解决?
— 本帖被 XChinux 执行加亮操作(2008-04-08) —
在windows下,执行完configure后,执行mingw32-make,出现以下错误:

s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `int std::vec
tor<_Ty, _A>::rbegin() const':
d:/Microsoft Visual Studio/VC98/include/vector:103: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `int std::vec
tor<_Ty, _A>::rend()':
d:/Microsoft Visual Studio/VC98/include/vector:105: error: there are no argument
s to `begin' that depend on a template parameter, so a declaration of `begin' mu
st be available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `int std::vec
tor<_Ty, _A>::rend() const':
d:/Microsoft Visual Studio/VC98/include/vector:107: error: there are no argument
s to `begin' that depend on a template parameter, so a declaration of `begin' mu
st be available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `bool std::ve
ctor<_Ty, _A>::empty() const':
d:/Microsoft Visual Studio/VC98/include/vector:118: error: there are no argument
s to `size' that depend on a template parameter, so a declaration of `size' must
be available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<_Ty, _A>::push_back(const _Ty&)':
d:/Microsoft Visual Studio/VC98/include/vector:142: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<_Ty, _A>::pop_back()':
d:/Microsoft Visual Studio/VC98/include/vector:144: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<_Ty, _A>::clear()':
d:/Microsoft Visual Studio/VC98/include/vector:212: error: there are no argument
s to `begin' that depend on a template parameter, so a declaration of `begin' mu
st be available
d:/Microsoft Visual Studio/VC98/include/vector:212: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `bool std::ve
ctor<_Ty, _A>::_Eq(const std::vector<_Ty, _A>&) const':
d:/Microsoft Visual Studio/VC98/include/vector:214: error: there are no argument
s to `size' that depend on a template parameter, so a declaration of `size' must
be available
d:/Microsoft Visual Studio/VC98/include/vector:215: error: there are no argument
s to `begin' that depend on a template parameter, so a declaration of `begin' mu
st be available
d:/Microsoft Visual Studio/VC98/include/vector:215: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `bool std::ve
ctor<_Ty, _A>::_Lt(const std::vector<_Ty, _A>&) const':
d:/Microsoft Visual Studio/VC98/include/vector:217: error: there are no argument
s to `begin' that depend on a template parameter, so a declaration of `begin' mu
st be available
d:/Microsoft Visual Studio/VC98/include/vector:217: error: there are no argument
s to `end' that depend on a template parameter, so a declaration of `end' must b
e available
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<_Ty, _A>::swap(std::vector<_Ty, _A>&)':
d:/Microsoft Visual Studio/VC98/include/vector:221: error: `_First' undeclared (
first use this function)
d:/Microsoft Visual Studio/VC98/include/vector:222: error: `_Last' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector:223: error: `_End' undeclared (fi
rst use this function)
d:/Microsoft Visual Studio/VC98/include/vector: At global scope:
d:/Microsoft Visual Studio/VC98/include/vector:249: error: an explicit specializ
ation must be preceded by 'template <>'
d:/Microsoft Visual Studio/VC98/include/vector: In constructor `std::vector<std:
:_Bool, std::_Bool_allocator>::vector(size_t, bool, const std::_Bool_allocator&)
':
d:/Microsoft Visual Studio/VC98/include/vector:424: error: no matching function
for call to `std::vector<std::_Vbase, std::_Bool_allocator>::vector(size_t, int,
const std::allocator<std::_Vbase>&)'
d:/Microsoft Visual Studio/VC98/include/vector:49: note: candidates are: std::ve
ctor<_Ty, _A>::vector(const std::vector<_Ty, _A>&) [with _Ty = std::_Vbase, _A =
std::_Bool_allocator]
d:/Microsoft Visual Studio/VC98/include/vector:40: note:                std::ve
ctor<_Ty, _A>::vector(const _A&) [with _Ty = std::_Vbase, _A = std::_Bool_alloca
tor]
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<std::_Bool, std::_Bool_allocator>::reserve(size_t)':
d:/Microsoft Visual Studio/VC98/include/vector:432: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'reserve'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `size_t std::
vector<std::_Bool, std::_Bool_allocator>::capacity() const':
d:/Microsoft Visual Studio/VC98/include/vector:434: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'capacity'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `std::vector<
std::_Bool, std::_Bool_allocator>::iterator std::vector<std::_Bool, std::_Bool_a
llocator>::begin()':
d:/Microsoft Visual Studio/VC98/include/vector:436: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `std::vector<
std::_Bool, std::_Bool_allocator>::const_iterator std::vector<std::_Bool, std::_
Bool_allocator>::begin() const':
d:/Microsoft Visual Studio/VC98/include/vector:438: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `size_t std::
vector<std::_Bool, std::_Bool_allocator>::max_size() const':
d:/Microsoft Visual Studio/VC98/include/vector:465: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'max_size'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<std::_Bool, std::_Bool_allocator>::insert(std::vector<std::_Bool, std::_Boo
l_allocator>::iterator, size_t, bool)':
d:/Microsoft Visual Studio/VC98/include/vector:508: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'resize'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<std::_Bool, std::_Bool_allocator>::insert(std::vector<std::_Bool, std::_Boo
l_allocator>::iterator, std::vector<std::_Bool, std::_Bool_allocator>::const_ite
rator, std::vector<std::_Bool, std::_Bool_allocator>::const_iterator)':
d:/Microsoft Visual Studio/VC98/include/vector:519: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'resize'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<std::_Bool, std::_Bool_allocator>::flip()':
d:/Microsoft Visual Studio/VC98/include/vector:535: error: `iterator' is not a m
ember of `std::vector<std::_Vbase, std::_Bool_allocator>'
d:/Microsoft Visual Studio/VC98/include/vector:535: error: expected `;' before "
_S"
d:/Microsoft Visual Studio/VC98/include/vector:536: error: `_S' undeclared (firs
t use this function)
d:/Microsoft Visual Studio/VC98/include/vector:536: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<std::_Bool, std::_Bool_allocator>::_Trim(size_t)':
d:/Microsoft Visual Studio/VC98/include/vector:558: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:559: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'erase'
d:/Microsoft Visual Studio/VC98/include/vector:559: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:559: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/vector:563: error: no match for 'operato
r[]' in '((std::vector<std::_Bool, std::_Bool_allocator>*)this)->std::vector<std
::_Bool, std::_Bool_allocator>::_Vec[(_M - 1u)]'
d:/Microsoft Visual Studio/VC98/include/ostream: In member function `std::basic_
ostream<_E, _Tr>& std::basic_ostream<_E, _Tr>::put(_E) [with _E = char, _Tr = st
d::char_traits<char>]':
d:/Microsoft Visual Studio/VC98/include/ostream:373:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/ostream:235: error: 'struct std::basic_s
treambuf<char, std::char_traits<char> >' has no member named 'sputc'
d:/Microsoft Visual Studio/VC98/include/ostream: In member function `std::basic_
ostream<_E, _Tr>& std::basic_ostream<_E, _Tr>::put(_E) [with _E = wchar_t, _Tr =
std::char_traits<wchar_t>]':
d:/Microsoft Visual Studio/VC98/include/ostream:379:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/ostream:235: error: 'struct std::basic_s
treambuf<wchar_t, std::char_traits<wchar_t> >' has no member named 'sputc'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `bool std::ve
ctor<_Ty, _A>::_Eq(const std::vector<_Ty, _A>&) const [with _Ty = std::_Vbase, _
A = std::_Bool_allocator]':
d:/Microsoft Visual Studio/VC98/include/vector:540:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/vector:214: error: `begin' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector:214: error: `end' undeclared (fir
st use this function)
d:/Microsoft Visual Studio/VC98/include/vector:214: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:214: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:214: error: `size' undeclared (fi
rst use this function)
d:/Microsoft Visual Studio/VC98/include/vector: In member function `bool std::ve
ctor<_Ty, _A>::_Lt(const std::vector<_Ty, _A>&) const [with _Ty = std::_Vbase, _
A = std::_Bool_allocator]':
d:/Microsoft Visual Studio/VC98/include/vector:543:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/vector:217: error: `begin' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector:217: error: `end' undeclared (fir
st use this function)
d:/Microsoft Visual Studio/VC98/include/vector:217: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:217: error: 'const class std::vec
tor<std::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/vector: In member function `void std::ve
ctor<_Ty, _A>::swap(std::vector<_Ty, _A>&) [with _Ty = std::_Vbase, _A = std::_B
ool_allocator]':
d:/Microsoft Visual Studio/VC98/include/vector:546:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/vector:221: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named '_First'
d:/Microsoft Visual Studio/VC98/include/vector:222: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named '_Last'
d:/Microsoft Visual Studio/VC98/include/vector:223: error: 'class std::vector<st
d::_Vbase, std::_Bool_allocator>' has no member named '_End'
d:/Microsoft Visual Studio/VC98/include/istream: In member function `bool std::b
asic_istream<_E, _Tr>::ipfx(bool) [with _E = char, _Tr = std::char_traits<char>]
':
d:/Microsoft Visual Studio/VC98/include/istream:34:  instantiated from `std::ba
sic_istream<_E, _Tr>::sentry::sentry(std::basic_istream<_E, _Tr>&, bool) [with _
E = char, _Tr = std::char_traits<char>]'
d:/Microsoft Visual Studio/VC98/include/istream:544:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/istream:44: error: invalid operands of t
ypes `int' and `std::ios_base&()(std::ios_base&)' to binary `operator&'
d:/Microsoft Visual Studio/VC98/include/istream:51: error: 'struct std::basic_st
reambuf<char, std::char_traits<char> >' has no member named 'snextc'
d:/Microsoft Visual Studio/VC98/include/istream: In member function `bool std::b
asic_istream<_E, _Tr>::ipfx(bool) [with _E = wchar_t, _Tr = std::char_traits<wch
ar_t>]':
d:/Microsoft Visual Studio/VC98/include/istream:34:  instantiated from `std::ba
sic_istream<_E, _Tr>::sentry::sentry(std::basic_istream<_E, _Tr>&, bool) [with _
E = wchar_t, _Tr = std::char_traits<wchar_t>]'
d:/Microsoft Visual Studio/VC98/include/istream:564:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/istream:44: error: invalid operands of t
ypes `int' and `std::ios_base&()(std::ios_base&)' to binary `operator&'
d:/Microsoft Visual Studio/VC98/include/istream:51: error: 'struct std::basic_st
reambuf<wchar_t, std::char_traits<wchar_t> >' has no member named 'snextc'
d:/Microsoft Visual Studio/VC98/include/xstring: In member function `std::basic_
string<_E, _Tr, _A>& std::basic_string<_E, _Tr, _A>::assign(const _E*, int) [wit
h _E = char, _Tr = std::char_traits<char>, _A = std::allocator<char>]':
d:/Microsoft Visual Studio/VC98/include/xstring:50:  instantiated from `std::ba
sic_string<_E, _Tr, _A>::basic_string(const _E*, int, const _A&) [with _E = char
, _Tr = std::char_traits<char>, _A = std::allocator<char>]'
../../include/QtCore/../../src/corelib/tools/qstring.h:973:  instantiated from
here
d:/Microsoft Visual Studio/VC98/include/xstring:133: error: `_Grow' undeclared (
first use this function)
d:/Microsoft Visual Studio/VC98/include/xstring:135: error: `_Eos' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector: In copy constructor `std::vector
<_Ty, _A>::vector(const std::vector<_Ty, _A>&) [with _Ty = std::_Vbase, _A = std
::_Bool_allocator]':
d:/Microsoft Visual Studio/VC98/include/vector:225:  instantiated from `void st
d::vector<_Ty, _A>::swap(std::vector<_Ty, _A>&) [with _Ty = std::_Vbase, _A = st
d::_Bool_allocator]'
d:/Microsoft Visual Studio/VC98/include/vector:546:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/vector:50: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:51: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:51: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/vector:51: error: `_Ucopy' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector: In member function `std::vector<
_Ty, _A>& std::vector<_Ty, _A>::operator=(const std::vector<_Ty, _A>&) [with _Ty
= std::_Vbase, _A = std::_Bool_allocator]':
d:/Microsoft Visual Studio/VC98/include/vector:225:  instantiated from `void st
d::vector<_Ty, _A>::swap(std::vector<_Ty, _A>&) [with _Ty = std::_Vbase, _A = st
d::_Bool_allocator]'
d:/Microsoft Visual Studio/VC98/include/vector:546:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/vector:64: error: `size' undeclared (fir
st use this function)
d:/Microsoft Visual Studio/VC98/include/vector:64: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:67: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:68: error: `capacity' undeclared
(first use this function)
d:/Microsoft Visual Studio/VC98/include/vector:68: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:70: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:71: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/vector:71: error: `_Ucopy' undeclared (f
irst use this function)
d:/Microsoft Visual Studio/VC98/include/vector:72: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:76: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'size'
d:/Microsoft Visual Studio/VC98/include/vector:77: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'begin'
d:/Microsoft Visual Studio/VC98/include/vector:77: error: 'const class std::vect
or<std::_Vbase, std::_Bool_allocator>' has no member named 'end'
d:/Microsoft Visual Studio/VC98/include/ostream: In member function `void std::b
asic_ostream<_E, _Tr>::osfx() [with _E = char, _Tr = std::char_traits<char>]':
d:/Microsoft Visual Studio/VC98/include/ostream:44:  instantiated from `std::ba
sic_ostream<_E, _Tr>::sentry::~sentry() [with _E = char, _Tr = std::char_traits<
char>]'
d:/Microsoft Visual Studio/VC98/include/ostream:230:  instantiated from `std::b
asic_ostream<_E, _Tr>& std::basic_ostream<_E, _Tr>::put(_E) [with _E = char, _Tr
= std::char_traits<char>]'
d:/Microsoft Visual Studio/VC98/include/ostream:373:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/ostream:56: error: invalid operands of t
ypes `int' and `std::ios_base&()(std::ios_base&)' to binary `operator&'
d:/Microsoft Visual Studio/VC98/include/ostream: In member function `void std::b
asic_ostream<_E, _Tr>::osfx() [with _E = wchar_t, _Tr = std::char_traits<wchar_t
>]':
d:/Microsoft Visual Studio/VC98/include/ostream:44:  instantiated from `std::ba
sic_ostream<_E, _Tr>::sentry::~sentry() [with _E = wchar_t, _Tr = std::char_trai
ts<wchar_t>]'
d:/Microsoft Visual Studio/VC98/include/ostream:230:  instantiated from `std::b
asic_ostream<_E, _Tr>& std::basic_ostream<_E, _Tr>::put(_E) [with _E = wchar_t,
_Tr = std::char_traits<wchar_t>]'
d:/Microsoft Visual Studio/VC98/include/ostream:379:  instantiated from here
d:/Microsoft Visual Studio/VC98/include/ostream:56: error: invalid operands of t
ypes `int' and `std::ios_base&()(std::ios_base&)' to binary `operator&'
mingw32-make[2]: *** [tmp/obj/debug_shared/qtmain_win.o] Error 1
mingw32-make[2]: Leaving directory `C:/Qt/4.3.4/src/winmain'
mingw32-make[1]: *** [debug-all] Error 2
mingw32-make[1]: Leaving directory `C:/Qt/4.3.4/src/winmain'
mingw32-make: *** [sub-winmain-make_default-ordered] Error 2

不知时什么原因,请问如何解决?谢谢!
离线zttyler

只看该作者 5楼 发表于: 2008-04-30
是因为你存在多个编译器,可以看出你的系统中存在VC++6.0和MinGW两个编译器。编译qt4-win32版本,系统中最好只有一个编译器,可以把不需要的编译器删除。
离线yangtnt123

只看该作者 4楼 发表于: 2008-04-25
设置谁的include lib?mingw吗?抱歉我比较菜。
离线sunqing

只看该作者 3楼 发表于: 2008-04-09
哦,我明白了,难怪老编译不通过呢。谢谢
I am starving!
离线dream_y06

只看该作者 2楼 发表于: 2008-04-07
set  重新设置inlude 和 lib 的环境变量以后就OK了!非常感谢!
离线XChinux

只看该作者 1楼 发表于: 2008-04-05
请重新设置环境变量。
你使用的是mingw,但在include和lib中却找先找到的是msvc中的,所以无法正确编译。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个