Arx Libertatis Bug Tracker
Please log in to bookmark issues
OPEN  Bug report #1692  -  Building Arx Libertatis
Posted Apr 02, 2023 - updated May 19, 2023   Shortlink:
Issue details
  • Type of issue
    Bug report
  • Status
  • Assigned to
    Not assigned to anyone
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
  • Posted by
     Guest user
  • Owned by
    Not owned by anyone
  • Estimated time
    Not estimated
  • Category
    Not determined
  • Resolution
    Not determined
  • Priority
    Not determined
  • Reproducability
  • Severity
    Not determined
  • Targetted for
    icon_milestones.png Not determined
  • OS
    icon_customdatatype.png Not determined
  • Architecture
    icon_customdatatype.png Not determined
  • Fixed in
    icon_customdatatype.png Not determined
Issue description
Hello. I was trying to build Arx Libertatis for the RG35xx (which is a Linux-based, Armv7a, of which I do have the toolchain of), but keep getting this error:

"No suitable version of Epoxy found.

     Maybe you don't have the right (32 vs.64 bit) architecture installed?

     Tried /usr/lib/x86_64-linux-gnu/ and -lepoxy
     Using compiler /opt/miyoo/bin/arm-miyoo-linux-uclibcgnueabi-g++  -flto=auto -fmerge-all-constants -Wall -Wextra -Warray-bounds=2 -Wcast-qual   -Wdouble-promotion -Wduplicated-cond  -Wformat=2  -Winit-self  -Wlogical-op -Wmissing-declarations -Wnoexcept -Woverflow -Woverloaded-virtual  -Wpointer-arith -Wredundant-decls  -Wshift-overflow -Wstrict-null-sentinel -Wstringop-overflow=2 -Wundef -Wunused-const-variable=1 -Wunused-macros -Wvla   -Wfloat-conversion   -Wsign-promo -Wold-style-cast -Wshadow -Wno-maybe-uninitialized -Wp,-U_GLIBCXX_ASSERTIONS -fno-rtti -DNDEBUG -g2 -ffast-math" 

Or, the same error but with Glew instead.
Steps to reproduce this issue
Using Docker Desktop (I'm on Windows) and Visual Studio Code, after creating the container, I use these commands: --------------------------------------------------------------------------------------------------------------------------------------- apt update

apt install cmake libsdl2-dev libsdl2-2.0-0 libboost-all-dev libglm-dev freeglut3-dev freetype2-demos inkscape libopenal-dev libmythes-dev libglew-dev -y (I used GLEW instead of Libepoxy, but I've also tried libepoxy-dev instead of libglew)

git clone

cd Arx Libertatis

mkdir build

cd build

cmake ../ --------------------------------------------------------------------------------------------------------------------------------------- That's where the error appears.

Comment posted by
 Daniel Scharrer
May 19, 12:49
Cross-compiling is always tricky. It looks like in your case CMake finds your native AMD64 libraries instead of the ARM ones. You probably need to create a CMake Toolchain file if your toolchain does not come with one tell CMake to use it using -DCMAKE_TOOLCHAIN_FILE=... - see for details. Note that CMake does not really support changing the toolchain that well so make sure you start from a clean build directory.

For our Linux cross builds I use this toolchain file: It makes many assumptions like getting the target triple from the (symlinked) filename and expecting the cross root at "/usr/${target}" so you will probably need to adapt it. The most important part is setting the CMAKE_SYSROOT and CMAKE_FIND_* variables to tell CMake where to look as well as the PKG_CONFIG_LIBDIR and PKG_CONFIG_SYSROOT_DIR environment variables to do the same for pkgconfig which CMake will use for many libraries.