3 ms·
What are the "least painful" toolchains to set up. How do they compare to GCC in (a) size and (b) portability.
by 1vuio0pswjnm7 2y ago
What are the "least painful" toolchains to set up.
How do they compare to GCC in (a) size and (b) portability.
- inferiorhuman 2y agoLLVM is a bit easier to set up in my experience. One of the most irritating things about setting up a GNU toolchain is the hard dependency on texinfo (which has been dropped in later versions I think). In general I've found rust pretty easy to build.
- wfn 2y agoAgree regarding easiness of building rust (`cargo build`), extremely satisfying (git clone and cargo build...) Does anyone have any comments on Bazel[1] because I'm kind of settling on using it whenever it's appropriate (c/c++)?.. [1] https://bazel.build/ https://bazel.build/
- 1vuio0pswjnm7 2y agoIs python actually a requirement for compiling the rust toolchain so compiling rust toolchain requires compiling python first https://rustc-dev-guide.rust-lang.org/building/how-to-build-and-run.html https://rustc-dev-guide.rust-lang.org/building/how-to-build-...
- klysm 2y agoThen the c toolchain needs to also be considered from a bootstrapping standpoint
- 1vuio0pswjnm7 2y agoIs cmake actually a requirement for compiling LLVM such that one must compile cmake before one can compile LLVM. Compiling a statically-linked cmake is time-consuming and difficult if not infeasible.
- 1vuio0pswjnm7 2y agoExample sizes of statically-compiled (portable) toolchains 328.7M llvmbox-15.0.7+3-x86_64-linux 242.3M x86_64-linux-musl-native 169.4M x86_64-linux-musl-cross A statically-compiled Rust toolchain would exceed these sizes by a relatively large margin References https://github.com/savi-lang/llvm-static/releases/expanded_assets/v18.1.8-20240804 https://github.com/savi-lang/llvm-static/releases/expanded_a... https://mmusl.cc https://mmusl.cc https://users-rust-lang.org/t/how-to-build-a-statically-linked-rustc/83024 https://users-rust-lang.org/t/how-to-build-a-statically-link...
- 1vuio0pswjnm7 2y agoCorrection: https://github.com/rsms/llvmbox/releases/expanded_assets/v15.0.7%2B3 https://github.com/rsms/llvmbox/releases/expanded_assets/v15...