lucaschessR2
lucaschessR2 copied to clipboard
Rodent IV?
Hi,
can you support Rodent 4 in your UI? Currently it is Rodent 2 and its personalities that you use. R4 has personalities independent from ELO. I.e., strength is set via UCI_ELO.
https://github.com/nescitus/rodent-iv
Thx
There are two problems:
- The distribution would increase by 23 Mb, which is excessive. The cause is the books it uses. By working on this, perhaps by reusing the books in Rodent II, it might be possible to reduce it a lot.
- There is no compiled version for Linux. I have tried to compile it and there are bugs that I don't know how to fix.
There is no compiled version for Linux. I'll see if I can compile it.
it's possible, i once did it for Rodent IV v0.32
Compiles without errors.
When linking, it comes up with a bunch of errors:
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function std::thread::~thread()':
main.cpp:(.text._ZNSt6threadD2Ev[_ZNSt6threadD5Ev]+0x1d): undefined reference to std::terminate()' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function cEngine::WaitThinkThread()':
main.cpp:(.text._ZN7cEngine15WaitThinkThreadEv[_ZN7cEngine15WaitThinkThreadEv]+0x30): undefined reference to std::thread::join()' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function void std::__cxx11::list<cEngine, std::allocator<cEngine> >::_M_insert<int&>(std::_List_iterator<cEngine>, int&)':
main.cpp:(.text.ZNSt7__cxx114listI7cEngineSaIS1_EE9_M_insertIJRiEEEvSt14_List_iteratorIS1_EDpOT[ZNSt7__cxx114listI7cEngineSaIS1_EE9_M_insertIJRiEEEvSt14_List_iteratorIS1_EDpOT]+0x45): undefined reference to std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function void std::__cxx11::list<cEngine, std::allocator<cEngine> >::_M_insert<>(std::_List_iterator<cEngine>)':
main.cpp:(.text.ZNSt7__cxx114listI7cEngineSaIS1_EE9_M_insertIJEEEvSt14_List_iteratorIS1_EDpOT[ZNSt7__cxx114listI7cEngineSaIS1_EE9_M_insertIJEEEvSt14_List_iteratorIS1_EDpOT]+0x2f): undefined reference to std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function __gnu_cxx::new_allocator<std::_List_node<cEngine> >::deallocate(std::_List_node<cEngine>, unsigned long)':
main.cpp:(.text._ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE10deallocateEPS3_m[_ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE10deallocateEPS3_m]+0x1c): undefined reference to operator delete(void*)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o: in function __gnu_cxx::new_allocator<std::_List_node<cEngine> >::allocate(unsigned long, void const)':
main.cpp:(.text._ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE8allocateEmPKv]+0x2c): undefined reference to std::__throw_bad_alloc()' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.cpp:(.text._ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE8allocateEmPKv[_ZN9__gnu_cxx13new_allocatorISt10_List_nodeI7cEngineEE8allocateEmPKv]+0x3f): undefined reference to operator new(unsigned long)'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: main.o:(.eh_frame+0x14b): undefined reference to __gxx_personality_v0' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.o: in function PrintGenericTaunt()':
taunt.cpp:(.text+0x169): undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x173): undefined reference to std::cout'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x178): undefined reference to std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x18a): undefined reference to std::basic_ostream<char, std::char_traitsstd::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x197): undefined reference to std::ostream::operator<<(std::ostream& ()(std::ostream&))'
/usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x1a3): undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x1b4): undefined reference to std::__cxx11::basic_string<char, std::char_traitsPrintCaptureTaunt()': taunt.cpp:(.text+0x227): undefined reference to std::__cxx11::basic_string<char, std::char_traitsstd::cout' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: taunt.cpp:(.text+0x236): undefined reference to std::basic_ostream<char, std::char_traitsstd::basic_ostream<char, std::char_traits<char> >& std::operator<< <char, std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/ ....
Compiles without errors. When linking, it comes up with a bunch of errors..
i don't remember how i did it, but sometimes i just have to invoke not g++-11 but g++-13 to prevent such errors !?
I couldn't link it without errors, I tried with g++-13, and I couldn't link it with g++-13 either, Most likely, I have done it incorrectly.
I'd recommend to include it only if the personality books will work, because it is an existential feature of it. Rodent 2 personality books AFAICS don't seem to work in Lucaschess. They are not being used.
In personalities are used.
My statement "Rodent 2 personality books AFAICS don't seem to work" is wrong. I had the "Humanize time" option on and so Rodent took a while to move, I misinterpreted it and thought it's not using the book. Aww, the many options. This software is such a great gift.