ccache VS ShellCheck

Compare ccache vs ShellCheck and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
ccache ShellCheck
28 489
2,178 35,056
1.6% -
9.4 8.7
5 days ago 12 days ago
C++ Haskell
GNU General Public License v3.0 or later GNU General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

ccache

Posts with mentions or reviews of ccache. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-10.
  • Deep Learning with “AWS Graviton2 + NVIDIA Tensor T4G” for as low as free* with CUDA 12.2
    2 projects | dev.to | 10 Sep 2023
    # Download and install ccache for faster compilation wget https://github.com/ccache/ccache/releases/download/v4.8.3/ccache-4.8.3.tar.xz tar -xf ccache-4.8.3.tar.xz pushd ccache-4.8.3 cmake . make -j $CPUS make install popd # Install NumPy, a dependency for PyTorch dnf install -y numpy # Install Python typing extensions for better type-checking sudo -u ec2-user pip3 install typing-extensions # Clone PyTorch repository and install from source git clone --recursive https://github.com/pytorch/pytorch.git pushd pytorch python3 setup.py install popd # Refresh the dynamic linker run-time bindings ldconfig # Install additional Python libraries for PyTorch sudo -u ec2-user pip3 install sympy filelock fsspec networkx
  • This isn’t the way to speed up Rust compile times
    7 projects | news.ycombinator.com | 26 Aug 2023
    > What can I use to cache with MSVC that isn't Incredibuild?

    Ccache works, but if you use the Visual Studio C++ compiler you need to configure your build to be cacheable.

    https://github.com/ccache/ccache/wiki/MS-Visual-Studio

  • Flutter or React Native
    1 project | /r/FlutterDev | 4 Jul 2023
    That ecosystem now is too young. All these things must be configured by an automatic installer. Packages and pods need to be tested before release, etc. Previous was 80 min compilation time of the Firestore package. Solved with https://ccache.dev/. But why Dart developers must know, how to install and configure object cache for C++ compilers?
  • Distcc: A fast, free distributed C/C++ compiler
    11 projects | news.ycombinator.com | 1 Jun 2023
    Related

    https://github.com/icecc/icecream - another option that does what distcc does, but aimed at a somewhat different use case.

    https://ccache.dev/ - a similar idea but provides caching of build outputs instead of distributing builds. You can use it together with distcc to achieve even better performance.

  • Debugging the QtCreator
    1 project | /r/QtFramework | 27 Apr 2023
  • How to avoid compiling whole C++ project every time using Github actions?
    1 project | /r/cpp_questions | 26 Feb 2023
  • Boring Python: Code Quality
    14 projects | news.ycombinator.com | 20 Dec 2022
    > All those big changes introduce commits that make git bisect generally slower.

    Bisection search is log2(n) so doubling the number of commits should only add one more bisection step, yes?

    > Which might be awful if you also have some C code to recompile at every step of bisecting.

    That reminds me, I've got to try out ccache (https://ccache.dev/ ) for my project. My full compile is one minute, but the three files that take longest to compiler rarely change.

  • Ccache – a fast C/C++ compiler cache
    1 project | /r/patient_hackernews | 24 Nov 2022
    1 project | /r/hackernews | 24 Nov 2022
    9 projects | news.ycombinator.com | 22 Nov 2022
    I worked with the internals of this some 16 years ago, maintaining a customized version at Zeugma Systems. Some change of mine was reworked by someone and upstreamed:

    https://github.com/ccache/ccache/commit/e8354384f67bc733bea5...

ShellCheck

Posts with mentions or reviews of ShellCheck. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-05-02.
  • How I use Devbox in my Elm projects
    15 projects | dev.to | 2 May 2024
    These projects use Caddy as my local development server, Dart Sass for converting my Sass files to CSS, elm, elm-format, elm-optimize-level-2, elm-review, elm-test (only in Calculator), ShellCheck to find bugs in my shell scripts, and Terser to mangle and compress JavaScript code.
  • Ask HN: Is there a GUI for bash shell?
    2 projects | news.ycombinator.com | 19 Apr 2024
    ncurse, dialog, zenity[2]. i/o buffering may be an issue [3a,3b]

    Assuming using same account, use history command to show past commands[0a, 0b]

    'load random example' on shellcheck using own custom examples from history command.[1]

    --------

    [3a] : http://www.gnu.org/software/coreutils/manual/html_node/stdbu...

    [3b] : http://unix.stackexchange.com/questions/25372/how-to-turn-of...

    [2] : http//funprojects.blog/2021/01/25/zenity-command-line-dialogs/

    [1] : http://www.shellcheck.net/

    [0a] : http://www.tecmint.com/history-command-examples/

    [0b] : http://www.tecmint.com/remember-linux-commands/

    web based documentation: https://www.tecmint.com/linux-commands-cheat-sheet/

    commands grouped by typical usage patterns : https://www.tecmint.com/essential-linux-commands/

  • DevSecOps with AWS- IaC at scale - Building your own platform - Part 1
    8 projects | dev.to | 21 Mar 2024
    ... #************************** Terraform ************************************* ARG TERRAFORM_VERSION=1.7.3 RUN set -ex \ && curl -O https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip -d /usr/local/bin/ RUN set -ex \ && mkdir -p $HOME/.terraform.d/plugin-cache && echo 'plugin_cache_dir = "$HOME/.terraform.d/plugin-cache"' > ~/.terraformrc #************************* Terragrunt ************************************* ARG TERRAGRUNT_VERSION=0.55.1 RUN set -ex \ && wget https://github.com/gruntwork-io/terragrunt/releases/download/v${TERRAGRUNT_VERSION}/terragrunt_linux_amd64 -q \ && mv terragrunt_linux_amd64 /usr/local/bin/terragrunt \ && chmod +x /usr/local/bin/terragrunt #*********************** Terramate **************************************** ARG TERRAMATE_VERSION=0.4.5 RUN set -ex \ && wget https://github.com/mineiros-io/terramate/releases/download/v${TERRAMATE_VERSION}/terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && tar -xzf terramate_${TERRAMATE_VERSION}_linux_x86_64.tar.gz \ && mv terramate /usr/local/bin/terramate \ && chmod +x /usr/local/bin/terramate #*********************** tfsec ******************************************** ARG TFSEC_VERSION=1.28.5 RUN set -ex \ && wget https://github.com/aquasecurity/tfsec/releases/download/v${TFSEC_VERSION}/tfsec-linux-amd64 \ && mv tfsec-linux-amd64 /usr/local/bin/tfsec \ && chmod +x /usr/local/bin/tfsec \ && terragrunt --version #**********************Terraform docs ************************************ ARG TERRRAFORM_DOCS_VERSION=0.17.0 RUN set -ex \ && curl -sSLo ./terraform-docs.tar.gz https://terraform-docs.io/dl/v${TERRRAFORM_DOCS_VERSION}/terraform-docs-v${TERRRAFORM_DOCS_VERSION}-$(uname)-amd64.tar.gz \ && tar -xzf terraform-docs.tar.gz \ && chmod +x terraform-docs \ && mv terraform-docs /usr/local/bin/terraform-docs #********************* ShellCheck ***************************************** ARG SHELLCHECK_VERSION="stable" RUN set -ex \ && wget -qO- "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION?}/shellcheck-${SHELLCHECK_VERSION?}.linux.x86_64.tar.xz" | tar -xJv \ && cp "shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/ \ && shellcheck --version ...
  • Ask HN: Popular open source tool originally written in Haskell?
    3 projects | news.ycombinator.com | 10 Feb 2024
    ShellCheck: https://github.com/koalaman/shellcheck
  • Google ZX – A tool for writing better scripts
    8 projects | news.ycombinator.com | 9 Feb 2024
    If I want to write better shell scripts I usually run shellcheck and adjust accordingly or if I need facilities not provided by the shell i switch to a full fledged programming language. Ans oh yes, `sh` is present almost on every BSD and Linux box for free so I consider it an important thing to at least be comfortable with.

    shellcheck: https://www.shellcheck.net/

  • How I use Nix in my Elm projects
    8 projects | dev.to | 19 Dec 2023
    When I run nix-shell at the root of the project it puts me in a Nix shell that contains, among other programs, caddy and shellcheck. Notice that in the shellHook I add the project's shell scripts to the PATH. So once I'm in the Nix shell I can, among other things:
  • Ask HN: A Bash guide for Posix programmers?
    1 project | news.ycombinator.com | 17 Dec 2023
  • Regex support to list modules in .cabal?
    1 project | /r/haskell | 4 Dec 2023
    I have also seen some projects on github like ShellCheck which first make a library, expose all the modules and then simple add that do build-depends of the final executable. Is this the recommended approach than having just one executable and adding all the modules to other-modules:?
  • Shellcheck finds bugs in your shell scripts
    11 projects | news.ycombinator.com | 23 Nov 2023
    The error checks can be pretty arcane:

       https://github.com/koalaman/shellcheck/wiki/Checks
  • Is there a syntax checker?
    2 projects | /r/groff | 24 Oct 2023
    Similar to for instance shellcheck to check the syntax of shell scripts, is there an equivalent for the set of roff commands typically used in a (Linux) man page? I'm aware that e.g. pandoc permits the conversion of an other format (e.g., org) to both roff man and roff ms.

What are some alternatives?

When comparing ccache and ShellCheck you can also consider the following projects:

sccache - Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.

bash-language-server - A language server for Bash

buildcache - A build cache

shellharden - The corrective bash syntax highlighter

Redis - Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps.

shfmt - Dockernized shfmt. This formats shell script.

linux-tkg - linux-tkg custom kernels

shfmt - A shell formatter (sh/bash/mksh)

icecream - Distributed compiler with a central scheduler to share build load

PowerShell - PowerShell for every system!

setup-gcc - GitHub action to set up GCC

efm-langserver - General purpose Language Server