Bazel Alternatives

Similar projects and alternatives to Bazel

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better Bazel alternative or higher similarity.

Suggest an alternative to Bazel

Bazel reviews and mentions

Posts with mentions or reviews of Bazel. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-06-23.
  • Incremental Builds for Haskell with Bazel
    7 projects | news.ycombinator.com | 23 Jun 2022
    I migrated a mid-size polyglot project from Makefiles to Bazel and C++ was a large component of the project.

    Some obstacles:

    1. Building with QT5 MOC & UI files. There is a great library[0] for it but it has hardcoded paths to the QT binaries and header files assuming a system-wide installation. I had to patch the rule to point to our QT location. Then it worked fine.

    2. There is no rule to build a fully static library[1]. Since we were shipping a static library in our Makefile system, that was somewhat annoying.

    3. We were using system links like `$PROJECT_ROOT/links/GCC/vX.Y.Z/ -> /opt/gcc/...` to point to all the build tools, but these didn't work in Bazel I think because it required absolute paths for any binaries it calls. We ended up putting them in a .bazelrc but we would need a different one for Windows and Linux.

    4. Not good integration with IDEs

    Ultimately we did not keep using Bazel because we were building Python binaries and py_binary was too slow on Windows. And we didn't have enough time to write a PyInstaller rule.

    [0]: https://github.com/justbuchanan/bazel_rules_qt

    [1]: https://github.com/bazelbuild/bazel/issues/1920

  • Is there any better options for building kotlin then gradle?
    1 project | reddit.com/r/Kotlin | 15 Jun 2022
  • Rust starlark interpreters purpose?
    1 project | reddit.com/r/bazel | 6 Jun 2022
    Secondly, let me check my current version of the Bazel source. The Java Starlark code (https://github.com/bazelbuild/bazel/tree/master/src/main/java/net/starlark/java) is about 22 KLoC (accoridng to "find src/main/java/net/starlark/java/ -name '*.java' | xargs wc -l"). The non-Starlark code (https://github.com/bazelbuild/bazel/tree/master/src/main/java/com/google/devtools) comes out to 217 KLoC. This is just main code that's (mostly) actually bundled into the binary: I'm ignoring tests, native wrappers, and a lot of tooling.
  • Tensorflow Compile Runs For A Long Time
    1 project | reddit.com/r/codehunter | 9 May 2022
    So I am trying to compile TensorFlow from the source (using a clone from their git repo from 2019-01-31). I installed Bazel from their shell script (https://github.com/bazelbuild/bazel/releases/download/0.21.0/bazel-0.21.0-installer-linux-x86_64.sh).
  • Having trouble installing bazel on Mac OS
    2 projects | reddit.com/r/bazel | 9 May 2022
    hmm might have to do a clean uninstall and do a re-install. Make sure you've deleted the cache file as well. You can find instructions here: https://github.com/bazelbuild/bazel/issues/838
    2 projects | reddit.com/r/bazel | 9 May 2022
    no, that wont work as far as i know. did you try installing using homebrew? Seems like there's a version where it causes some conflict on .bazelversion that gies out an error (https://github.com/bazelbuild/bazel/issues/10356). They seem to have fixed it but may be it just works better as a homebrew install.
  • Google Is 2B Lines of Code–and It's All in One Place
    3 projects | news.ycombinator.com | 6 May 2022
    (Opinions are my own)

    > Do they do an immense amount of code generation?

    Blaze (aka Bazel [0]) has provisions that make it easy to generate code but this happens as a compile step rather than something that is checked into a git repo.

    [0] - https://bazel.build/

  • Bazel in Vulkan Projects. Part 1 — Environment Setup
    1 project | reddit.com/r/vulkan | 6 May 2022
    Yeah, similarly to cmake, Bazel is a build tool. Here is its official webpage https://bazel.build/
  • Source forest creation failed error
    1 project | reddit.com/r/bazel | 30 Apr 2022
    Best to post on the bazel issue tracker https://github.com/bazelbuild/bazel/issues
  • Building a Node.js monorepo with Pnpm and Nx
    1 project | reddit.com/r/node | 28 Apr 2022
    About multi-language monorepos, I have not tested it by myself, but I think that maybe Nx is not the best tool. It is mainly focused on JavaScript. It has a lot of plugins for different JavaScript frameworks, but there are very few plugins for other languages. You can check a list of available community plugins here. Maybe you can try with Bazel or any other monorepo tool more focused to multi-language. This site contains a comparison between tools and other resources that may be useful before taking a decision.
  • Casync – A Content-Addressable Data Synchronization Tool
    10 projects | news.ycombinator.com | 22 Apr 2022
    I did PoC experiments with compression, chunking, and IPFS here: https://github.com/SaveTheRbtz/bazel-cache

    If you need a mature compression implementation for bazel I would recommend using recent bazel versions w/ gRPC-based bazel-remote: https://github.com/buchgr/bazel-remote

    bazel nowadays supports end-to-end compression w/ `--experimental_remote_cache_compression`: https://github.com/bazelbuild/bazel/pull/14041

  • Looking for an AWS job in Germany
    1 project | reddit.com/r/sre | 21 Apr 2022
    It’s intentionally vague because there’s so much that isn’t publicly available info that we’re not allowed to advertise or mention in a job posting. As far as I know nothing about our CI/CD stack is open sourced or based on existing open source tools outside of Bazel (https://bazel.build), which is known internally as Blaze and is publicly well documented as part of our distributed build system.
  • Run e2e tests 10x faster using firecracker VMs
    5 projects | news.ycombinator.com | 17 Apr 2022
    > Why do you need to snapshot live processes?

    Often times there are long-living processes which rarely change but take a long time to warm up. The Bazel [1] agent for C++ projects, the buildkit [2] state for docker, or the running Postgres or Redis server for a cloud native app for example.

    It's why running "docker build" twice on your laptop is so fast, but running "docker build" in CI seems glacially slow.

    > why is docker-in-docker a requirement, and how is that easier than qemu in qemu or qemu in docker or whatever?

    The example given was running "docker-compose build", so you'd need either docker-in-firecracker (this post), docker-in-docker, or docker-in-qemu. You'd almost never run docker-compose build on bare metal in practice, because you'd immediately need to push the images you built somewhere to use them.

    [1] https://bazel.build/

  • Micro-frontends building blocks: Monorepos
    9 projects | dev.to | 4 Apr 2022
    Tools like Lerna, Bazel, Nx, Rush, Turborepo, to name a few. Lerna is probably the grand daddy of all monorepo tools. CRA, Babel, Jest are a few projects that use it. Bazel has been refined and tested for years at Google to build heavy-duty, mission-critical infrastructure, services, and applications. Turborepo is the monorepo for Vercel, the leading platform for frontend frameworks. These tools can help keep your monorepo workspaces fast, understandable and manageable.
  • Is it normal for Jetpack Compose previews to be slow to rerender?
    1 project | reddit.com/r/androiddev | 30 Mar 2022
    https://bazel.build/ Used by Google and Spotify instead of Gradle since they have like 1000 modules. Gradle isn't really fit for that

Stats

Basic Bazel repo stats
64
18,901
10.0
1 day ago

bazelbuild/bazel is an open source project licensed under Apache License 2.0 which is an OSI approved license.

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
Find remote jobs at our new job board 99remotejobs.com. There are 2 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.