Run on Elbrus
Pls see https://youtu.be/5nlhFKdTIR0 Is there a problem? Elbrus is a computer with an original CPU architecture. Maybe that's the problem. I compiled the code for Elbrus.
I think the main problem is its special compiler (LCC?) that only tries to be compatible with GCC but it's not GCC at all. Some compilation options should be adjusted.
Which version do you have? cc --version
Can you post the exact commands that you've used to build OpenD2?
Elbrus fully supports the most popular instructions mmx, sse1-4.2, avx1-2 and so on. Now compatible GCC v5.5, soon to be compatible with GCC 7. In CMakeLists.txt switch off build D2 server. mkdie build cd build cmake .. make -j8
(Exact cc --version is still unknown:)
cc --version
lcc:1.23.18:Apr-13-2019:e2k-v4-linux gcc (GCC) 5.5.0 compatible
Elbrus fully supports the most popular instructions mmx, sse1-4.2, avx1-2 and so on. Now compatible GCC v5.5, soon to be compatible with GCC 7.
Not so fast, please. There are two ways of using E2K machines:
- either you're using it in native mode (VLIW architecture with proprietary instruction set that is only supported by proprietary LCC with incomplete support for C/C++ standards, although the situation constantly improves), there is no MMX/SSE/AVX in this mode, although it has its own alternatives,
- or you are using it in x86-compatibility mode (that is achieved with binary translation), then it's possible to run normal Linux/GCC/etc. Less problems, less performance (this mode is mostly for running legacy M$-locked applications under virtualized Windows, although Linux runs good in it too).
Your output of CC gives the idea that you're running it in native mode, output of cat /proc/cpuinfo can provide additional proof for this.
The problem that I saw at the end of your video (btw, you can use scrot or any other simple tool to make screenshots and ffmpeg to record screen video) is with dynamic linking of libraries. Either name mangling is wrong somewhere, or required function was dropped by some compiler optimization or this function wasn't included to the list of exported ones. Can you post the Makefile that was generated by cmake? Can you make a statically-linked build of OpenD2?
Offtop: was this video recorded at Yandex museum?
Yes, video from Yandex museum. I use native mode(e2k). Makefile.zip