-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Hi, I have some problems building from source on Ubuntu 24.04.1 LTS WSL. I'll walk through the steps listed on the README.
- Clone and setup
git clone --recursive https://github.com/arbor-sim/gui.git
cd arbor-gui
mkdir build
cd build
I don't think this block works as intended. The clone command gives me a directory called gui so cd arbor-gui fails, then we go into a new folder build outside the repo.
- Dependencies
sudo apt update
sudo apt install build-essential libssl-dev \
libxml2-dev libxrandr-dev libxinerama-dev \
libxcursor-dev libxi-dev libglu1-mesa-dev \
freeglut3-dev mesa-common-dev gcc-10 g++-10
All of these libraries are accessible with sudo apt install but this command as it is written at first gave me an error E: Unable to locate package libxml2-dev. I was able to finally get all of these, I had to try sudo apt install <package> on them individually in different orders than is written. I don't know enough about how package accessibility works in Ubuntu to diagnose this exactly.
- Cmake and compilers
I havecmake version 3.28.3so that's fine. Theupdate-alternativesthing works too.
But then I docmake ..ingui/build, which fails with the following output.
/gui/build$ cmake ..
-- Found Git: /usr/bin/git (found version "2.43.0")
-- The C compiler identification is GNU 10.5.0
-- The CXX compiler identification is GNU 10.5.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CXX_HAS_NATIVE
-- Performing Test CXX_HAS_NATIVE - Success
CMake Warning at 3rd-party/arbor/cmake/CompilerOptions.cmake:88 (message):
Found an unsupported compiler GNU version 10.5.0, please consider switching
to a supported version of GCC or Clang. Build failure is expected. We
reserve the option to close all related issues without consideration.
Call Stack (most recent call first):
3rd-party/arbor/CMakeLists.txt:210 (check_supported_cxx)
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- CPM: Adding package json@3.12.0 (v3.12.0)
-- Using the multi-header code from /home/jordan/gui/build/_deps/json-src/include/
-- CPM: Adding package random123@1.14.0 (v1.14.0)
-- CPM: Adding package pugixml@1.13 (v1.13)
-- CPM: Adding package fmt@10.0.0 (10.0.0)
-- Version: 10.0.0
-- Build type: release
-- CPM: Adding package benchmark@1.8.3 (v1.8.3)
-- Failed to find LLVM FileCheck
-- git version: v1.8.3 normalized to 1.8.3
-- Google Benchmark version: 1.8.3
-- Looking for shm_open in rt
-- Looking for shm_open in rt - found
-- Performing Test HAVE_CXX_FLAG_WALL
-- Performing Test HAVE_CXX_FLAG_WALL - Success
-- Performing Test HAVE_CXX_FLAG_WEXTRA
-- Performing Test HAVE_CXX_FLAG_WEXTRA - Success
-- Performing Test HAVE_CXX_FLAG_WSHADOW
-- Performing Test HAVE_CXX_FLAG_WSHADOW - Success
-- Performing Test HAVE_CXX_FLAG_WFLOAT_EQUAL
-- Performing Test HAVE_CXX_FLAG_WFLOAT_EQUAL - Success
-- Performing Test HAVE_CXX_FLAG_WOLD_STYLE_CAST
-- Performing Test HAVE_CXX_FLAG_WOLD_STYLE_CAST - Success
-- Performing Test HAVE_CXX_FLAG_WERROR
-- Performing Test HAVE_CXX_FLAG_WERROR - Success
-- Performing Test HAVE_CXX_FLAG_WSUGGEST_OVERRIDE
-- Performing Test HAVE_CXX_FLAG_WSUGGEST_OVERRIDE - Success
-- Performing Test HAVE_CXX_FLAG_PEDANTIC
-- Performing Test HAVE_CXX_FLAG_PEDANTIC - Success
-- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS
-- Performing Test HAVE_CXX_FLAG_PEDANTIC_ERRORS - Success
-- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32
-- Performing Test HAVE_CXX_FLAG_WSHORTEN_64_TO_32 - Failed
-- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING
-- Performing Test HAVE_CXX_FLAG_FSTRICT_ALIASING - Success
-- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED_DECLARATIONS
-- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED_DECLARATIONS - Success
-- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED
-- Performing Test HAVE_CXX_FLAG_WNO_DEPRECATED - Success
-- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING
-- Performing Test HAVE_CXX_FLAG_WSTRICT_ALIASING - Success
-- Performing Test HAVE_CXX_FLAG_WD654
-- Performing Test HAVE_CXX_FLAG_WD654 - Failed
-- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY
-- Performing Test HAVE_CXX_FLAG_WTHREAD_SAFETY - Failed
-- Performing Test HAVE_CXX_FLAG_COVERAGE
-- Performing Test HAVE_CXX_FLAG_COVERAGE - Success
-- Compiling and running to test HAVE_STD_REGEX
-- Performing Test HAVE_STD_REGEX -- success
-- Compiling and running to test HAVE_GNU_POSIX_REGEX
-- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile
-- Compiling and running to test HAVE_POSIX_REGEX
-- Performing Test HAVE_POSIX_REGEX -- success
-- Compiling and running to test HAVE_STEADY_CLOCK
-- Performing Test HAVE_STEADY_CLOCK -- success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Compiling and running to test HAVE_PTHREAD_AFFINITY
-- Performing Test HAVE_PTHREAD_AFFINITY -- success
-- CPM: Adding package googletest@1.12.1 (release-1.12.1)
-- Found Python: /usr/bin/python3 (found version "3.12.3") found components: Interpreter
-- CPM: Adding package units@0.13.1 (v0.13.1)
-- adding library units::units
-- CPM: Adding package tinyopt@0 (7e6d707d49c6cb4be27ebd253856be65293288df)
-- Found Python3: /usr/bin/python3 (found suitable version "3.12.3", minimum required is "3.10.0") found components: Interpreter
-- Failed to locate sphinx-build executable (missing: SPHINX_EXECUTABLE)
-- Could NOT find PY_svgwrite (missing: PY_SVGWRITE)
CMake Deprecation Warning at 3rd-party/glbinding/cmake/Custom.cmake:6 (cmake_policy):
The OLD behavior for policy CMP0120 will be removed from a future version
of CMake.
The cmake-policies(7) manual explains that the OLD behaviors of all
policies are deprecated and that a policy should be set to OLD only under
specific short-term circumstances. Projects should be ported to the NEW
behavior and not rely on setting a policy to OLD.
Call Stack (most recent call first):
3rd-party/glbinding/CMakeLists.txt:37 (set_policy)
-- Could NOT find cppcheck (missing: cppcheck_EXECUTABLE)
-- Check cppcheck skipped: cppcheck not found
-- Could NOT find clang_tidy (missing: clang_tidy_EXECUTABLE)
-- Check clang-tidy skipped: clang-tidy not found
-- Coverage lcov skipped: Manually disabled
-- External KHRplatform
-- Lib glbinding
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Lib glbinding-aux
Tool glbinding-glcontexts skipped: glfw3 not found
Tool glbinding-glfunctions skipped: glfw3 not found
Tool glbinding-glinfo skipped: glfw3 not found
Tool glbinding-glisdeprecated skipped: glfw3 not found
-- Tool glbinding-glmeta
Tool glbinding-glqueries skipped: glfw3 not found
Tool glbinding-glescontexts skipped: glfw3 not found
-- Including Wayland support
-- Including X11 support
-- Looking for memfd_create
-- Looking for memfd_create - found
CMake Error at 3rd-party/glfw/src/CMakeLists.txt:77 (message):
Failed to find wayland-scanner
-- Configuring incomplete, errors occurred!
And at this point I don't know what to do. There is no rule to make target 'install'
Thanks in advance!
PS: As a long-time WSL user, I can say display forwarding is always a pain. You suggest using VcXsrv, which in my eyes is a little dated. Consider using X410. I've used it for a while now with Debian WSL and it's lovely.