Hi all!!!
Today I tested new SVN repository for CB, but I had the same problem than CVS version:
./configmanager.h: In member function 'void ConfigManager::Read(const wxString&, ConfigManagerContainer::SerializableObjectMap*)':
./configmanager.h:199: error: no matching function for call to 'TiXmlHandle::FirstChild(wxString&)'
./tinyxml/tinyxml.h:1458: note: candidates are: TiXmlHandle TiXmlHandle::FirstChild() const
./tinyxml/tinyxml.h:1460: note: TiXmlHandle TiXmlHandle::FirstChild(const char*) const
make[2]: *** [sdk.h.gch] Error 1
I tried to fix it by myself but it was impossible. Is anybody working in Linux SVN version?
Thanks
Why do I think the compiler has something to do with it?
Check your g++ --version and try again with a more recent version.
Ceniza, thanks for your answer.
g++ --version
g++ (GCC) 4.0.3 20051023 (prerelease) (Debian 4.0.2-3)
I don't think g++ version to be the key of the problem :(
Has anybody suscessfully built svn code in linux?
Thanks in advance
Correct me if I am wrong, but this error could be fixed by adding .c_str() to the tinyXML call.
./configmanager.h:199: error: no matching function for call to 'TiXmlHandle::FirstChild(wxString&)'
the wxString by ref is not possible, buyt when you add .c_str() it will convert to char *. Visual Studio wrongfully does this for you, a very dangerous assumption.
./tinyxml/tinyxml.h:1460: note: TiXmlHandle TiXmlHandle::FirstChild(const char*) const
- Jorgen
That doesn't work. I tried that before. The truth is I'm lost with it :(
I 'll commit a fix for it a little later.
What's troubling me is that this is a templated function which should be compiled on instantiation. AFAIK it's not used anywhere though...
So, it seems, the compiler plays its part here...
...and the fix has been commited (along with other pending changes).
This is my worst nightmare:
./configmanager.h: In member function 'void ConfigManager::Read(const wxString&, ConfigManagerContainer::SerializableObjectMap*)':
./configmanager.h:199: error: expected primary-expression before '<<' token
./configmanager.h:199: error: expected primary-expression before '<<' token
./configmanager.h:199: error: expected primary-expression before '<<' token
./configmanager.h:199: error: expected primary-expression before '<' token
./configmanager.h:199: error: expected primary-expression before '.' token
./configmanager.h:200: error: expected `;' before 'if'
make[2]: *** [sdk.h.gch] Error 1
Thanks for your code Mandrav, but it doest work to me :(
Please delete src/sdk/sdk.h.gch and it 'll work.
Note to self: I have to add dependencies for it to be recompiled when needed...
This is stronger than me :-(
Deleted sdk.h.gch, but I have same error .
./configmanager.h: In member function 'void ConfigManager::Read(const wxString&, ConfigManagerContainer::SerializableObjectMap*)':
./configmanager.h:199: error: no matching function for call to 'TiXmlHandle::FirstChild(wxString&)'
./tinyxml/tinyxml.h:1458: note: candidates are: TiXmlHandle TiXmlHandle::FirstChild() const
./tinyxml/tinyxml.h:1460: note: TiXmlHandle TiXmlHandle::FirstChild(const char*) const
make[2]: *** [sdk.h.gch] Error 1
make[2]: Leaving directory `/home/jose/instalados/cbsvn/trunk/src/sdk'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jose/instalados/cbsvn/trunk/src'
make: *** [all-recursive] Error 1
Have you *actually* updated using svn? I 've commited the fix many hours ago...
I think so.
I did
svn checkout svn://svn.berlios.de/codeblocks/trunk
Revisión obtenida: 1407
after that make clean
and later make but it didn't work, so I removed trunk folder and I did a new checkout with same result.
I don't know if yours is the same problem but I found that there is a bug in the make system. It is trying to link the wrong version of the Code::Blocks libraries. Try going into src/sdk and running
make
make install
NOTE: this will probably break any current installation of Code::Blocks!
now cd back to the Code::Blocks root and try runnning make again.
This is what i try to "make" from svn version 1419:
g++ -DHAVE_CONFIG_H -I. -I. -I. -I/usr/lib/wx/include/gtk2u-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I../../src/sdk/wxscintilla/include -I../../src/sdk/tinyxml -I../../src/sdk/as/include -I/usr/lib/wx/include/gtk2u-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -g -O2 -O2 -ffast-math -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -o ./sdk.h.gch -xc++-header ./sdk.h
In file included from ./sdk.h:87:
./configmanager.h:6:24: wx/hashset.h: No such file or directory
In file included from ./sdk.h:87:
./configmanager.h:49: error: `StringSet' has not been declared
./configmanager.h:49: error: expected constructor, destructor, or type conversion before ';' token
./configmanager.h:177: error: expected unqualified-id before '&' token
./configmanager.h:177: error: expected `,' or `...' before '&' token
./configmanager.h:177: error: ISO C++ forbids declaration of `parameter' with no type
./configmanager.h:177: error: `void ConfigManager::Write(const wxString&, int)' and `void ConfigManager::Write(const wxString&, int)' cannot be overloaded
./configmanager.h:178: error: `ConfigManagerContainer::StringSet' has not been declared
./configmanager.h:178: error: ISO C++ forbids declaration of `map' with no type
./configmanager.h:178: error: `void ConfigManager::Read(const wxString&, int*)' and `bool ConfigManager::Read(const wxString&, int*)' cannot be overloaded
./configmanager.h:179: error: using-declaration for non-member at class scope
./configmanager.h:179: error: expected `;' before "ReadSSet"
make[2]: *** [sdk.h.gch] Error 1
make[2]: Leaving directory `/usr/local/src/trunk/src/sdk'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/trunk/src'
make: *** [all-recursive] Error 1
Quote from: undofen on December 01, 2005, 09:34:07 PM
This is what i try to "make" from svn version 1419:
[...]
In file included from ./sdk.h:87:
./configmanager.h:6:24: wx/hashset.h: No such file or directory
[...]
What version of wxWidgets are you using? Looks like wx2.4.2 doesn't support hashset, but wx2.6.1 and wx2.6.2 do.
Im sorry, a gentoo system rebuild (emerge -e world) rebuilt wx-2.4, ill switch to 2.6 right away - big thx for the fast reply!