Make release build use conan deps where possible and hbb 4.0.1#516
Make release build use conan deps where possible and hbb 4.0.1#516
Conversation
|
As of the latest build of this PR (2025.7.9-HEAD+1952), I have confirmed that the following three commands work (with And in WSL(Ubuntu 20.04) Debian 10docker run --rm --platform linux/amd64 debian:10 bash -c "apt-get update && apt-get install -y wget && wget -O xahaud https://build.xahau.tech/2025.7.9-HEAD%2B1952 && chmod +x xahaud && ./xahaud --version"Ubuntu 20.04docker run --rm --platform linux/amd64 ubuntu:20.04 bash -c "apt-get update && apt-get install -y wget && wget -O xahaud https://build.xahau.tech/2025.7.9-HEAD%2B1952 && chmod +x xahaud && ./xahaud --version"Rocky Linux 8 (RHEL8 Compatible)docker run --rm --platform linux/amd64 rockylinux:8 bash -c "yum install -y wget && wget -O xahaud https://build.xahau.tech/2025.7.9-HEAD%2B1952 && chmod +x xahaud && ./xahaud --version" |
- clarify why boost, llvm, and lld are installed separately - explain that conan only provides shared library version - note which deps come from packages vs source builds
| cmake .. -DCMAKE_BUILD_TYPE=Release -DBoost_NO_BOOST_CMAKE=ON -DLLVM_DIR=/usr/lib64/llvm13/lib/cmake/llvm/ -DLLVM_LIBRARY_DIR=/usr/lib64/llvm13/lib/ -DWasmEdge_LIB=/usr/local/lib64/libwasmedge.a && | ||
| make -j$3 VERBOSE=1 && | ||
| strip -s rippled && | ||
| conan install .. --output-folder . --build missing --settings build_type=$BUILD_TYPE && |
There was a problem hiding this comment.
reminder: conan has issues with concurrent use of cache
There was a problem hiding this comment.
I actually had to use "conan remove --locks" at one point when experimenting after canceling a build midway through
This commit resolves an issue where the xahaud binary was dynamically linking against libstdc++ despite build flags requesting static linkage. The root cause was a bug in the Conan 1.x CMakeDeps generator, triggered by the snappy recipe modifying `system_libs`. This caused Conan to inject `-lstdc++` into the build, overriding other settings. The fix involves three parts: 1. snappy/conanfile.py: The trigger for the bug is removed by commenting out the modification of `system_libs`. 2. RippledCore.cmake: The math library (`libm`) is now explicitly linked to the final executable target as a best practice. 3. build-core.sh: The conan export for snappy is updated to the correct version.
| ccache -s && | ||
| strip -s rippled && | ||
| mv rippled xahaud && | ||
| libcheck xahaud && |
There was a problem hiding this comment.
For anyone else curious:
https://github.com/phusion/holy-build-box/blob/master/image/libcheck
| message(\"WasmEdge DONE\") | ||
| " > Builds/CMake/deps/WasmEdge.cmake && | ||
|
|
||
| export LDFLAGS="-static-libstdc++" |
There was a problem hiding this comment.
It seems to be working, but we should probably be "extending" LDFLAGS:
https://github.com/phusion/holy-build-box/blob/master/image/activate_func.sh#L14-L15
export LDFLAGS="$LDFLAGS -static-libstdc++"
There was a problem hiding this comment.
activate_holy_build_box_deps_installation_environment
Though that may not be relevant at all
There was a problem hiding this comment.
https://github.com/phusion/holy-build-box/blob/master/image/activate_func.sh#L24-L45
Ok, no, activate_holy_build_box is setting LDFLAGS too
There was a problem hiding this comment.
also, comment that is relevant to the conan deps (my assumption) probably good
|
Awesome job guys |
High Level Overview of Change
Context of Change
Type of Change
.gitignore, formatting, dropping support for older tooling)API Impact
libxrplchange (any change that may affectlibxrplor dependents oflibxrpl)