Niestety cała zawartość loga to:
Creating console and logfile: 3
Co do tego błędu to mam dokładnie takie same odczucia - boost nie powinien raczej failować w tak dziwny sposób. Dziwaczne.
Valgrind powinien powiedzieć coś więcej niż gdb na ten temat, ale, jak się okazało, nie umiem wnioskować z outputu valgrinda ;D
Starting...
Creating console and logfile: 58
==21203== Invalid free() / delete / delete] / realloc()
==21203== at 0xC764: free (vg_replace_malloc.c:430)
==21203== by 0x5E06701: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /usr/lib/libstdc++.6.0.9.dylib)
==21203== by 0x5E072B9: std::string::assign(std::string const&) (in /usr/lib/libstdc++.6.0.9.dylib)
==21203== by 0x16E89A9: boost::filesystem3::detail::directory_iterator_construct(boost::filesystem3::directory_iterator&, boost::filesystem3::path const&, boost::system::error_code*) (in /usr/local/Cellar/boost/1.49.0/lib/libboost_filesystem-mt.dylib)
==21203== by 0x10027AA8E: boost::filesystem3::directory_iterator::directory_iterator(boost::filesystem3::path const&) (in /usr/local/bin/vcmiclient)
==21203== by 0x2125A: boost::filesystem3::recursive_directory_iterator::recursive_directory_iterator(boost::filesystem3::path const&, boost::filesystem3::symlink_option) (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x2008C: CFilesystemLoader::listFiles(unsigned long, bool) const (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x1FC0E: CFilesystemLoader::CFilesystemLoader(std::string const&, unsigned long, bool) (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x2CB41: CResourceHandler::initialize() (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x34E5C1: LibClasses::loadFilesystem() (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x100222A63: SDL_main (in /usr/local/bin/vcmiclient)
==21203== by 0x1003D2B70: -[SDLMain applicationDidFinishLaunching:] (in /usr/local/bin/vcmiclient)
==21203== Address 0x25252b0 is in the Data segment of /Users/nooga/local/gcc-4.7.1/lib/libstdc++.6.dylib
==21203==
==21203== Invalid free() / delete / delete] / realloc()
==21203== at 0xC764: free (vg_replace_malloc.c:430)
==21203== by 0x5E06701: std::string::_Rep::_M_dispose(std::allocator<char> const&) (in /usr/lib/libstdc++.6.0.9.dylib)
==21203== by 0x5E072B9: std::string::assign(std::string const&) (in /usr/lib/libstdc++.6.0.9.dylib)
==21203== by 0x222D1: boost::filesystem3::path::path<boost::filesystem3::directory_entry>(boost::filesystem3::directory_entry const&, boost::enable_if<boost::filesystem3::path_traits::is_pathable<boost::decay<boost::filesystem3::directory_entry>::type>, void>::type*) (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x201B3: CFilesystemLoader::listFiles(unsigned long, bool) const (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x1FC0E: CFilesystemLoader::CFilesystemLoader(std::string const&, unsigned long, bool) (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x2CB41: CResourceHandler::initialize() (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x34E5C1: LibClasses::loadFilesystem() (in /Users/nooga/vcmi2/trunk/build/lib/.libs/libvcmi.0.dylib)
==21203== by 0x100222A63: SDL_main (in /usr/local/bin/vcmiclient)
==21203== by 0x1003D2B70: -[SDLMain applicationDidFinishLaunching:] (in /usr/local/bin/vcmiclient)
==21203== by 0x2A1BD0D: __-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_1 (in /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation)
==21203== by 0x272D7B9: _CFXNotificationPost (in /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation)
==21203== Address 0x25252b0 is in the Data segment of /Users/nooga/local/gcc-4.7.1/lib/libstdc++.6.dylib
==21203==
Initialization: 630
terminate called after throwing an instance of 'std::runtime_error'
what(): Resource with name ALL/CONFIG/FILESYSTEM and type TEXT wasn't found.
Obejrzę sobie ten CFilesystemLoader::listFiles ale prawdopodobnie przyczyna nie jest z tym związana hyh.
Edit: Po krótkim googlaniu zdaje się, że to jest jakiś bug boosta w związku z gcc 4.7.1 i OSX -> boost.2283326.n4.nabble.com/Re-f … 33197.html
Edit2: Problemy w runtime mogły brać się stąd, że boost był skompilowany innym kompilatorem niż vcmi.
Zbudowałem potrzebne liby boosta 1.50 w tym samym środowisku, w którym buduję vcmi i staram się teraz ponownie zbudować vcmi. Niestety znowu natykam się na errory w compile time, np.: pastie.org/private/pkkcx0ptgfvjhjpepdelhw
Wygląda mi to na jakiś problem z includami ale nie umiem tego rozwiązać help plx?