Building a recent SVN head...

All development related issues welcome

Moderator: Moderator Team

Post Reply
João Jerónimo
Posts: 30
Joined: Thu Dec 09, 2004 5:28 pm

Building a recent SVN head...

Post by João Jerónimo » Mon Jan 15, 2007 2:01 pm

When I was trying to build the last SVN, C++ code produces many (many many many many) warnings, and ibrowser fails while precompiling a header:

Code: Select all

[PCH] obj-i386/base/applications/ibrowser/precomp.h.gch
In file included from base/applications/ibrowser/precomp.h:28:
base/applications/ibrowser/utility/utility.h:736: error: expected class-name before '{' token
base/applications/ibrowser/utility/utility.h:738: error: `wstring' does not name a type
base/applications/ibrowser/utility/utility.h:748: error: expected `,' or `...' before '&' token
base/applications/ibrowser/utility/utility.h:748: error: ISO C++ forbids declaration of `super' with no type
base/applications/ibrowser/utility/utility.h:772: error: expected `,' or `...' before '&' token
base/applications/ibrowser/utility/utility.h:772: error: ISO C++ forbids declaration of `super' with no type
base/applications/ibrowser/utility/utility.h: In constructor `String::String(const TCHAR*)':
base/applications/ibrowser/utility/utility.h:745: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In constructor `String::String(const TCHAR*, int)':
base/applications/ibrowser/utility/utility.h:746: error: class `String' does not have any field named `super'
base/applications/ibrowser/utility/utility.h: In constructor `String::String(int)':
base/applications/ibrowser/utility/utility.h:748: error: class `String' does not have any field named `super'
base/applications/ibrowser/utility/utility.h:748: error: `other' was not declared in this scope
base/applications/ibrowser/utility/utility.h:748: warning: unused variable 'other'
base/applications/ibrowser/utility/utility.h: In copy constructor `String::String(const String&)':
base/applications/ibrowser/utility/utility.h:749: error: class `String' does not have any field named `super'
base/applications/ibrowser/utility/utility.h: In member function `void String::assign(const CHAR*)':
base/applications/ibrowser/utility/utility.h:756: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h:756: error: `erase' was not declared in this scope
base/applications/ibrowser/utility/utility.h:756: warning: unused variable 'erase'
base/applications/ibrowser/utility/utility.h: In member function `void String::assign(const CHAR*, int)':
base/applications/ibrowser/utility/utility.h:757: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h:757: error: `erase' was not declared in this scope
base/applications/ibrowser/utility/utility.h:757: warning: unused variable 'erase'
base/applications/ibrowser/utility/utility.h: In member function `void String::assign(const BStr&)':
base/applications/ibrowser/utility/utility.h:758: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In member function `String& String::operator=(const TCHAR*)':
base/applications/ibrowser/utility/utility.h:771: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h:771: error: `erase' was not declared in this scope
base/applications/ibrowser/utility/utility.h:771: warning: unused variable 'erase'
base/applications/ibrowser/utility/utility.h: In member function `String& String::operator=(int)':
base/applications/ibrowser/utility/utility.h:772: error: `super' is not a class or namespace
base/applications/ibrowser/utility/utility.h:772: error: `s' was not declared in this scope
base/applications/ibrowser/utility/utility.h:772: warning: unused variable 's'
base/applications/ibrowser/utility/utility.h: In member function `void String::assign(const TCHAR*)':
base/applications/ibrowser/utility/utility.h:773: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In member function `void String::assign(const TCHAR*, int)':
base/applications/ibrowser/utility/utility.h:774: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In member function `String::operator const TCHAR*() const':
base/applications/ibrowser/utility/utility.h:776: error: `c_str' was not declared in this scope
base/applications/ibrowser/utility/utility.h:776: warning: unused variable 'c_str'
base/applications/ibrowser/utility/utility.h: In member function `String::operator std::string() const':
base/applications/ibrowser/utility/utility.h:779: error: `c_str' was not declared in this scope
base/applications/ibrowser/utility/utility.h:779: warning: unused variable 'c_str'
base/applications/ibrowser/utility/utility.h: In member function `String& String::printf(const TCHAR*, ...)':
base/applications/ibrowser/utility/utility.h:790: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In member function `String& String::vprintf(const TCHAR*, char*)':
base/applications/ibrowser/utility/utility.h:800: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h: In member function `String& String::appendf(const TCHAR*, ...)':
base/applications/ibrowser/utility/utility.h:811: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h:811: error: `append' was not declared in this scope
base/applications/ibrowser/utility/utility.h:811: warning: unused variable 'append'
base/applications/ibrowser/utility/utility.h: In member function `String& String::vappendf(const TCHAR*, char*)':
base/applications/ibrowser/utility/utility.h:821: error: `super' has not been declared
base/applications/ibrowser/utility/utility.h:821: error: `append' was not declared in this scope
base/applications/ibrowser/utility/utility.h:821: warning: unused variable 'append'
In file included from base/applications/ibrowser/precomp.h:29:
base/applications/ibrowser/utility/comutil.h: In member function `const TCHAR* COMExceptionBase::ErrorMessage() const':
base/applications/ibrowser/utility/comutil.h:72: error: 'struct String' has no member named 'empty'
In file included from base/applications/ibrowser/ibrowser.h:29,
                 from base/applications/ibrowser/precomp.h:31:
base/applications/ibrowser/utility/window.h: In member function `bool HyperlinkCtrl::LaunchLink()':
base/applications/ibrowser/utility/window.h:821: error: 'struct String' has no member named 'empty'
In file included from base/applications/ibrowser/ibrowser.h:201,
                 from base/applications/ibrowser/precomp.h:31:
base/applications/ibrowser/utility/xmlstorage.h: In function `std::string XMLStorage::get_utf8(const String&)':
base/applications/ibrowser/utility/xmlstorage.h:406: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h:406: error: 'const struct String' has no member named 'length'
In file included from base/applications/ibrowser/ibrowser.h:201,
                 from base/applications/ibrowser/precomp.h:31:
base/applications/ibrowser/utility/xmlstorage.h: In member function `void XMLStorage::XMLNode::clear()':
base/applications/ibrowser/utility/xmlstorage.h:807: error: `erase' is not a member of `String'
base/applications/ibrowser/utility/xmlstorage.h: In member function `String XMLStorage::XMLNode::get_content() const':
base/applications/ibrowser/utility/xmlstorage.h:932: error: 'struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In member function `void XMLStorage::XMLNode::set_content(const String&)':
base/applications/ibrowser/utility/xmlstorage.h:937: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLBool::XMLBool(const XMLStorage::XMLNode*, const String&, bool)':
base/applications/ibrowser/utility/xmlstorage.h:1602: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h:1603: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLBoolRef::XMLBoolRef(XMLStorage::XMLNode*, const String&, bool)':
base/applications/ibrowser/utility/xmlstorage.h:1636: error: 'struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In member function `XMLStorage::XMLBoolRef::operator bool() const':
base/applications/ibrowser/utility/xmlstorage.h:1642: error: 'struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In member function `bool XMLStorage::XMLBoolRef::operator!() const':
base/applications/ibrowser/utility/xmlstorage.h:1647: error: 'struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLInt::XMLInt(const XMLStorage::XMLNode*, const String&, int)':
base/applications/ibrowser/utility/xmlstorage.h:1692: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h:1693: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLIntRef::XMLIntRef(XMLStorage::XMLNode*, const String&, int)':
base/applications/ibrowser/utility/xmlstorage.h:1723: error: 'struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In member function `XMLStorage::XMLIntRef::operator int() const':
base/applications/ibrowser/utility/xmlstorage.h:1736: error: 'struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLDouble::XMLDouble(const XMLStorage::XMLNode*, const String&, double)':
base/applications/ibrowser/utility/xmlstorage.h:1774: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h:1775: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLDoubleRef::XMLDoubleRef(XMLStorage::XMLNode*, const String&, double)':
base/applications/ibrowser/utility/xmlstorage.h:1805: error: 'struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In member function `XMLStorage::XMLDoubleRef::operator double() const':
base/applications/ibrowser/utility/xmlstorage.h:1819: error: 'struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMLString::XMLString(const XMLStorage::XMLNode*, const String&, const TCHAR*)':
base/applications/ibrowser/utility/xmlstorage.h:1854: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMStringRef::XMStringRef(XMLStorage::XMLNode*, const String&, const TCHAR*)':
base/applications/ibrowser/utility/xmlstorage.h:1883: error: 'struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In constructor `XMLStorage::XMStringRef::XMStringRef(XMLStorage::XMLNode*, const String&, const String&, const TCHAR*)':
base/applications/ibrowser/utility/xmlstorage.h:1890: error: 'struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In function `void XMLStorage::read_option(T&, XMLStorage::const_XMLPos&, const TCHAR*)':
base/applications/ibrowser/utility/xmlstorage.h:1921: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h: In function `void XMLStorage::read_option(T&, XMLStorage::const_XMLPos&, const TCHAR*) [with T = int]':
base/applications/ibrowser/utility/xmlstorage.h:1930: error: 'const struct String' has no member named 'empty'
base/applications/ibrowser/utility/xmlstorage.h:1931: error: 'const struct String' has no member named 'c_str'
base/applications/ibrowser/utility/xmlstorage.h: In member function `void XMLStorage::XMLWriter::set_content(const String&)':
base/applications/ibrowser/utility/xmlstorage.h:2387: error: 'const struct String' has no member named 'c_str'
make: *** [obj-i386/base/applications/ibrowser/precomp.h.gch] Error 1
As ibrowser is not very useful, I commented it in the respective rbuild XML config file...
Then, explorer fails with similar output (which I'll not post because it's already too large)... I don't want to comment out explorer because it is (a bit) more important than ibrowser...


I'm compiling on Gentoo Linux, with mingw32-gcc version 3.4.6-r2 (not the recomended one, but the last one on 3.x)...
When I tried with the last 4.x version, the resulted was a completely different error when compiling c++ code (don't remember if it is the same modules or not)...

The SVN revision is 25498.

JJ

Apal
Posts: 155
Joined: Wed Nov 02, 2005 1:13 am
Location: Greece

Post by Apal » Fri Jan 19, 2007 8:57 am

Try compiling with the latest ROSBE. I don't have problems when compiling with it.
Well some warnings but not errors ;)

João Jerónimo
Posts: 30
Joined: Thu Dec 09, 2004 5:28 pm

Post by João Jerónimo » Sun Jan 21, 2007 4:48 am

Apal wrote:Try compiling with the latest ROSBE. I don't have problems when compiling with it.
Well some warnings but not errors ;)
Ros Build Environment is only for windows...
Yet, I've tried to compile with the same tools' versions that come with the RosBE and didn't work...

Anyway, forget... I'll compile on windows when I have the time...

JJ
Last edited by João Jerónimo on Mon Feb 05, 2007 9:32 pm, edited 1 time in total.

Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Post by Z98 » Sun Jan 21, 2007 7:04 am

The devs added a few of their own patches into the version of gcc they use in order to properly compile ROS.

João Jerónimo
Posts: 30
Joined: Thu Dec 09, 2004 5:28 pm

Post by João Jerónimo » Mon Feb 05, 2007 9:32 pm

Z98 wrote:The devs added a few of their own patches into the version of gcc they use in order to properly compile ROS.
Parhaps I could apply the same patches on Linux to properly compile React...

JJ

phoenix
Posts: 84
Joined: Mon Jul 24, 2006 12:37 am

Post by phoenix » Mon Feb 05, 2007 11:52 pm

I don't know about that problem, but compiling on Linux works for me (I didn't test recent trunk though).
I am using:
Debian Sid 64bit
Debian Etch 32bit chroot (because 64bit env doesn't work afaik)
mingw 3.4.5
gcc 4.1.1

And everything runs well, without patching anything. And I am using an even older version of mingw...
my blog: phoenix.de.am

João Jerónimo
Posts: 30
Joined: Thu Dec 09, 2004 5:28 pm

Post by João Jerónimo » Tue Feb 06, 2007 1:21 am

phoenix wrote:I don't know about that problem, but compiling on Linux works for me (I didn't test recent trunk though).
I am using:
Debian Sid 64bit
Debian Etch 32bit chroot (because 64bit env doesn't work afaik)
mingw 3.4.5
gcc 4.1.1

And everything runs well, without patching anything. And I am using an even older version of mingw...
Maybe it was fixed since I tried it the last time...
On windows with RosBE it, in fact, compiled... But compiled with gcc-3.4.5, cause with gcc-4.1.2 it failed while linking ibrowser...

JJ

Post Reply

Who is online

Users browsing this forum: Yeti [Bot] and 1 guest