Missing env param when building on arm
Summary
When im building on arm (armbian) im facing the problem
CMake was unable to find a build program corresponding to "Ninja"
Described in
- https://github.com/LadybirdBrowser/ladybird/blob/master/Documentation/BuildInstructionsLadybird.md#unable-to-find-a-build-program-corresponding-to-ninja
VCPKG log says
Environment variable VCPKG_FORCE_SYSTEM_BINARIES must be set on arm, s390x, ppc64le and riscv platforms.
in this case simply an env param is missing
export VCPKG_FORCE_SYSTEM_BINARIES=1
Operating system
Linux
Steps to reproduce
- Try build ladybord on armbian or another linux arm system
Expected behavior
Run build
Actual behavior
Runs into message
- CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
URL for a reduced test case
N/A
HTML/SVG/etc. source for a reduced test case
N/A
Log output and (if possible) backtrace
CMake Error at Build/vcpkg/scripts/buildsystems/vcpkg.cmake:904 (message):
vcpkg install failed. See logs for more information:
/home/omdm/git/ladybird/Build/release/vcpkg-manifest-install.log
Call Stack (most recent call first):
/usr/share/cmake-3.25/Modules/CMakeDetermineSystem.cmake:124 (include)
CMakeLists.txt:15 (project)
CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
-- Configuring incomplete, errors occurred!
ninja: Entering directory `/home/omdm/git/ladybird/Build/release'
ninja: error: loading 'build.ninja': No such file or directory
./Meta/ladybird.sh: line 217: /home/omdm/git/ladybird/Build/release/bin/Ladybird: No such file or directory
Environment variable VCPKG_FORCE_SYSTEM_BINARIES must be set on arm, s390x, ppc64le and riscv platforms.
Screenshots or screen recordings
No response
Build flags or config settings
No response
Contribute a patch?
- [ ] I’ll contribute a patch for this myself.
same issue for me onn WSL2
Same on Arch arm
==> Starting build()... -- Determined host VCPKG_TARGET_TRIPLET: arm64-linux -- Bootstrapping vcpkg before install -- Bootstrapping vcpkg before install - failed CMake Error at /home/markon/.cache/yay/ladybird/src/vcpkg/scripts/buildsystems/vcpkg.cmake:904 (message): vcpkg install failed. See logs for more information: /home/markon/.cache/yay/ladybird/src/build/vcpkg-bootstrap.log Call Stack (most recent call first): /usr/share/cmake/Modules/CMakeDetermineSystem.cmake:146 (include) CMakeLists.txt:18 (project)
CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage -- Configuring incomplete, errors occurred! ==> ERROR: A failure occurred in build().
Hm, yes this is a known requirement.
We should simply add it to the build documentation that this needs exported globally in your shellenv. It's already been added to the .devcontainer configs.
There's another requirement for 16k Linux kernels (such as on Apple Silicon), that you build gn yourself and add it to the $PATH. This is to build the skia package from vpckg from source.
I've built everything but the last 4 due skia complaining (skia only) ... now I've set that env variable and it's starting again to build ... from scratch ... everything ... 😅 ... wondering how come such known issue is not on the main branch already (since I've pulled like 5 minutes ago), thanks!
never mind ... now libtheora fails building ... before (without that variable) I had everything but skia and last other 3 things built without issues, now I have previously built packages failing ... has anyone managed to build this on arm64 ?