Alternatives για το clang

Να μοιραστώ ένα μικρό script χρήσιμο για προγραμματιστές της C++. Προσθέτει alternatives για την σειρά compilers του clang, κάνοντας ευκολότερη την χρήση τους, το /usr/bin/clang++ θα δείχνει στην έκδοση που θέλουμε, ενώ μπορούμε να αλλάξουμε εύκολα και τον default compiler αντικαθιστώντας τον gcc. Ευκολότερο για μια γρήγορη δοκιμή αντί να αλλάζεις τα build scripts.

#!/usr/bin/bash


function update() {
version=$1
priority=$2
  sudo update-alternatives \
    --install /usr/bin/clang               clang                    /usr/bin/clang-${version} ${priority} \
    --slave   /usr/bin/clang++             clang++                  /usr/bin/clang++-${version}  \
    --slave   /usr/bin/clang-cpp           clang-cpp                /usr/bin/clang-format-${version} \
    --slave   /usr/bin/clang-format        clang-format             /usr/bin/clang-format-${version} \
    --slave   /usr/bin/clang-check         clang-check              /usr/bin/clang-check-${version} \
    --slave   /usr/bin/clang-rename        clang-rename             /usr/bin/clang-rename-${version} \
    --slave   /usr/bin/clang-tblgen        clang-tblgen             /usr/bin/clang-tblgen-${version} \
    --slave   /usr/bin/clang-tidy          clang-tidy               /usr/bin/clang-tidy-tidy-${version} \
    --slave   /usr/bin/clang-include-fixer clangclang-include-fixer /usr/bin/clang-clang-include-fixer-${version} 
}

# Install arlternatives for version 12 with prioroty 12
update 12 12

# Provide alternatives to gcc
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 10
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 10

Στην συνέχεια χρησιμοποιούμε το galternatives για να επιλέξουμε τον compiler που θέλουμε

2 Likes