Forked from bhaskarvk/Setup GCC and CLANG Toolchains.md
Last active
January 14, 2021 09:53
-
-
Save Ujang360/50b250aa944d998823da7f0730fcca48 to your computer and use it in GitHub Desktop.
Proper GCC (vers. 5/6/7/8) & LLVM/CLANG (vers. 4/5/6/7/8) Toolchain Setup on Ubuntu 18.04
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
# Remove all existing alternatives | |
sudo update-alternatives --remove-all cc | |
# exit on first error | |
set -e | |
sudo update-alternatives \ | |
--install /usr/bin/cc cc /usr/bin/gcc 30 \ | |
--slave /usr/bin/c++ c++ /usr/bin/g++ \ | |
--slave /usr/bin/ld ld /usr/bin/x86_64-linux-gnu-ld | |
sudo update-alternatives \ | |
--install /usr/bin/cc cc /usr/bin/clang 20 \ | |
--slave /usr/bin/c++ c++ /usr/bin/clang++ \ | |
--slave /usr/bin/ld ld /usr/bin/lld |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
# Remove all existing alternatives | |
sudo update-alternatives --remove-all gcc | |
# exit on first error | |
set -e | |
# To install gcc toolchain versions 5/6/7/8. | |
sudo apt update | |
sudo apt install -y gcc-5 g++-5 gfortran-5 cpp-5 | |
sudo apt install -y gcc-6 g++-6 gfortran-6 cpp-6 | |
sudo apt install -y gcc-7 g++-7 gfortran-7 cpp-7 | |
sudo apt install -y gcc-8 g++-8 gfortran-8 cpp-8 | |
# GCC 8.x | |
sudo update-alternatives \ | |
--install /usr/bin/gcc gcc /usr/bin/gcc-8 40 \ | |
--slave /usr/bin/g++ g++ /usr/bin/g++-8 \ | |
--slave /usr/bin/cpp cpp /usr/bin/cpp-8 \ | |
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-8 \ | |
--slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-8 \ | |
--slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-8 \ | |
--slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-8 \ | |
--slave /usr/bin/gcov gcov /usr/bin/gcov-8 \ | |
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-8 \ | |
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-8 | |
# GCC 7.x | |
sudo update-alternatives \ | |
--install /usr/bin/gcc gcc /usr/bin/gcc-7 30 \ | |
--slave /usr/bin/g++ g++ /usr/bin/g++-7 \ | |
--slave /usr/bin/cpp cpp /usr/bin/cpp-7 \ | |
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-7 \ | |
--slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-7 \ | |
--slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-7 \ | |
--slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-7 \ | |
--slave /usr/bin/gcov gcov /usr/bin/gcov-7 \ | |
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-7 \ | |
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-7 | |
# GCC 6.x | |
sudo update-alternatives \ | |
--install /usr/bin/gcc gcc /usr/bin/gcc-6 20 \ | |
--slave /usr/bin/g++ g++ /usr/bin/g++-6 \ | |
--slave /usr/bin/cpp cpp /usr/bin/cpp-6 \ | |
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-6 \ | |
--slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-6 \ | |
--slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-6 \ | |
--slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-6 \ | |
--slave /usr/bin/gcov gcov /usr/bin/gcov-6 \ | |
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-6 \ | |
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-6 | |
# GCC 5.x | |
sudo update-alternatives \ | |
--install /usr/bin/gcc gcc /usr/bin/gcc-5 10 \ | |
--slave /usr/bin/g++ g++ /usr/bin/g++-5 \ | |
--slave /usr/bin/cpp cpp /usr/bin/cpp-5 \ | |
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-5 \ | |
--slave /usr/bin/gcc-nm gcc-nm /usr/bin/gcc-nm-5 \ | |
--slave /usr/bin/gcc-ar gcc-ar /usr/bin/gcc-ar-5 \ | |
--slave /usr/bin/gcc-ranlib gcc-ranlib /usr/bin/gcc-ranlib-5 \ | |
--slave /usr/bin/gcov gcov /usr/bin/gcov-5 \ | |
--slave /usr/bin/gcov-dump gcov-dump /usr/bin/gcov-dump-5 \ | |
--slave /usr/bin/gcov-tool gcov-tool /usr/bin/gcov-tool-5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
# Remove all existing alternatives | |
sudo update-alternatives --remove-all llvm | |
sudo update-alternatives --remove-all clang | |
# exit on first error | |
set -e | |
# To Install llvm/clang 4.0/5.0/6.0/7.0/8.0 | |
sudo apt update | |
sudo apt install -y clang-8.0 llvm-8.0 lld-8.0 lldb-8.0 | |
sudo apt install clang-{format,tidy,tools}-8.0 clang-8.0-doc clang-8.0-examples | |
sudo apt install -y clang-7.0 llvm-7.0 lld-7.0 lldb-7.0 | |
sudo apt install clang-{format,tidy,tools}-7.0 clang-7.0-doc clang-7.0-examples | |
sudo apt install -y clang-6.0 llvm-6.0 lld-6.0 lldb-6.0 | |
sudo apt install clang-{format,tidy,tools}-5.0 clang-5.0-doc clang-5.0-examples | |
sudo apt install -y clang-5.0 llvm-5.0 lld-5.0 lldb-5.0 | |
sudo apt install clang-{format,tidy,tools}-5.0 clang-5.0-doc clang-5.0-examples | |
sudo apt install -y clang-4.0 llvm-4.0 lld-4.0 lldb-4.0 | |
sudo apt install clang-{format,tidy,tools}-4.0 clang-4.0-doc clang-4.0-examples | |
# llvm-8.0 and clang-8.0 | |
sudo update-alternatives \ | |
--install /usr/lib/llvm llvm /usr/lib/llvm-8.0 50 \ | |
--slave /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-8.0 \ | |
--slave /usr/bin/llvm-ar llvm-ar /usr/bin/llvm-ar-8.0 \ | |
--slave /usr/bin/llvm-as llvm-as /usr/bin/llvm-as-8.0 \ | |
--slave /usr/bin/llvm-bcanalyzer llvm-bcanalyzer /usr/bin/llvm-bcanalyzer-8.0 \ | |
--slave /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-8.0 \ | |
--slave /usr/bin/llvm-diff llvm-diff /usr/bin/llvm-diff-8.0 \ | |
--slave /usr/bin/llvm-dis llvm-dis /usr/bin/llvm-dis-8.0 \ | |
--slave /usr/bin/llvm-dwarfdump llvm-dwarfdump /usr/bin/llvm-dwarfdump-8.0 \ | |
--slave /usr/bin/llvm-extract llvm-extract /usr/bin/llvm-extract-8.0 \ | |
--slave /usr/bin/llvm-link llvm-link /usr/bin/llvm-link-8.0 \ | |
--slave /usr/bin/llvm-mc llvm-mc /usr/bin/llvm-mc-8.0 \ | |
--slave /usr/bin/llvm-mcmarkup llvm-mcmarkup /usr/bin/llvm-mcmarkup-8.0 \ | |
--slave /usr/bin/llvm-nm llvm-nm /usr/bin/llvm-nm-8.0 \ | |
--slave /usr/bin/llvm-objdump llvm-objdump /usr/bin/llvm-objdump-8.0 \ | |
--slave /usr/bin/llvm-ranlib llvm-ranlib /usr/bin/llvm-ranlib-8.0 \ | |
--slave /usr/bin/llvm-readobj llvm-readobj /usr/bin/llvm-readobj-8.0 \ | |
--slave /usr/bin/llvm-rtdyld llvm-rtdyld /usr/bin/llvm-rtdyld-8.0 \ | |
--slave /usr/bin/llvm-size llvm-size /usr/bin/llvm-size-8.0 \ | |
--slave /usr/bin/llvm-stress llvm-stress /usr/bin/llvm-stress-8.0 \ | |
--slave /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-8.0 \ | |
--slave /usr/bin/llvm-tblgen llvm-tblgen /usr/bin/llvm-tblgen-8.0 | |
sudo update-alternatives \ | |
--install /usr/bin/clang clang /usr/bin/clang-8.0 50 \ | |
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-8.0 \ | |
--slave /usr/bin/lld lld /usr/bin/lld-8.0 \ | |
--slave /usr/bin/clang-format clang-format /usr/bin/clang-format-8.0 \ | |
--slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-8.0 \ | |
--slave /usr/bin/clang-tidy-diff.py clang-tidy-diff.py /usr/bin/clang-tidy-diff-8.0.py \ | |
--slave /usr/bin/clang-include-fixer clang-include-fixer /usr/bin/clang-include-fixer-8.0 \ | |
--slave /usr/bin/clang-offload-bundler clang-offload-bundler /usr/bin/clang-offload-bundler-8.0 \ | |
--slave /usr/bin/clangd clangd /usr/bin/clangd-8.0 \ | |
--slave /usr/bin/clang-check clang-check /usr/bin/clang-check-8.0 \ | |
--slave /usr/bin/scan-view scan-view /usr/bin/scan-view-8.0 \ | |
--slave /usr/bin/clang-apply-replacements clang-apply-replacements /usr/bin/clang-apply-replacements-8.0 \ | |
--slave /usr/bin/clang-query clang-query /usr/bin/clang-query-8.0 \ | |
--slave /usr/bin/modularize modularize /usr/bin/modularize-8.0 \ | |
--slave /usr/bin/sancov sancov /usr/bin/sancov-8.0 \ | |
--slave /usr/bin/c-index-test c-index-test /usr/bin/c-index-test-8.0 \ | |
--slave /usr/bin/clang-reorder-fields clang-reorder-fields /usr/bin/clang-reorder-fields-8.0 \ | |
--slave /usr/bin/clang-change-namespace clang-change-namespace /usr/bin/clang-change-namespace-8.0 \ | |
--slave /usr/bin/clang-import-test clang-import-test /usr/bin/clang-import-test-8.0 \ | |
--slave /usr/bin/scan-build scan-build /usr/bin/scan-build-8.0 \ | |
--slave /usr/bin/scan-build-py scan-build-py /usr/bin/scan-build-py-8.0 \ | |
--slave /usr/bin/clang-cl clang-cl /usr/bin/clang-cl-8.0 \ | |
--slave /usr/bin/clang-rename clang-rename /usr/bin/clang-rename-8.0 \ | |
--slave /usr/bin/find-all-symbols find-all-symbols /usr/bin/find-all-symbols-8.0 \ | |
--slave /usr/bin/lldb lldb /usr/bin/lldb-8.0 \ | |
--slave /usr/bin/lldb-server lldb-server /usr/bin/lldb-server-8.0 | |
# llvm-7.0 and clang-7.0 | |
sudo update-alternatives \ | |
--install /usr/lib/llvm llvm /usr/lib/llvm-7.0 40 \ | |
--slave /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-7.0 \ | |
--slave /usr/bin/llvm-ar llvm-ar /usr/bin/llvm-ar-7.0 \ | |
--slave /usr/bin/llvm-as llvm-as /usr/bin/llvm-as-7.0 \ | |
--slave /usr/bin/llvm-bcanalyzer llvm-bcanalyzer /usr/bin/llvm-bcanalyzer-7.0 \ | |
--slave /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-7.0 \ | |
--slave /usr/bin/llvm-diff llvm-diff /usr/bin/llvm-diff-7.0 \ | |
--slave /usr/bin/llvm-dis llvm-dis /usr/bin/llvm-dis-7.0 \ | |
--slave /usr/bin/llvm-dwarfdump llvm-dwarfdump /usr/bin/llvm-dwarfdump-7.0 \ | |
--slave /usr/bin/llvm-extract llvm-extract /usr/bin/llvm-extract-7.0 \ | |
--slave /usr/bin/llvm-link llvm-link /usr/bin/llvm-link-7.0 \ | |
--slave /usr/bin/llvm-mc llvm-mc /usr/bin/llvm-mc-7.0 \ | |
--slave /usr/bin/llvm-mcmarkup llvm-mcmarkup /usr/bin/llvm-mcmarkup-7.0 \ | |
--slave /usr/bin/llvm-nm llvm-nm /usr/bin/llvm-nm-7.0 \ | |
--slave /usr/bin/llvm-objdump llvm-objdump /usr/bin/llvm-objdump-7.0 \ | |
--slave /usr/bin/llvm-ranlib llvm-ranlib /usr/bin/llvm-ranlib-7.0 \ | |
--slave /usr/bin/llvm-readobj llvm-readobj /usr/bin/llvm-readobj-7.0 \ | |
--slave /usr/bin/llvm-rtdyld llvm-rtdyld /usr/bin/llvm-rtdyld-7.0 \ | |
--slave /usr/bin/llvm-size llvm-size /usr/bin/llvm-size-7.0 \ | |
--slave /usr/bin/llvm-stress llvm-stress /usr/bin/llvm-stress-7.0 \ | |
--slave /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-7.0 \ | |
--slave /usr/bin/llvm-tblgen llvm-tblgen /usr/bin/llvm-tblgen-7.0 | |
sudo update-alternatives \ | |
--install /usr/bin/clang clang /usr/bin/clang-7.0 40 \ | |
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-7.0 \ | |
--slave /usr/bin/lld lld /usr/bin/lld-7.0 \ | |
--slave /usr/bin/clang-format clang-format /usr/bin/clang-format-7.0 \ | |
--slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-7.0 \ | |
--slave /usr/bin/clang-tidy-diff.py clang-tidy-diff.py /usr/bin/clang-tidy-diff-7.0.py \ | |
--slave /usr/bin/clang-include-fixer clang-include-fixer /usr/bin/clang-include-fixer-7.0 \ | |
--slave /usr/bin/clang-offload-bundler clang-offload-bundler /usr/bin/clang-offload-bundler-7.0 \ | |
--slave /usr/bin/clangd clangd /usr/bin/clangd-7.0 \ | |
--slave /usr/bin/clang-check clang-check /usr/bin/clang-check-7.0 \ | |
--slave /usr/bin/scan-view scan-view /usr/bin/scan-view-7.0 \ | |
--slave /usr/bin/clang-apply-replacements clang-apply-replacements /usr/bin/clang-apply-replacements-7.0 \ | |
--slave /usr/bin/clang-query clang-query /usr/bin/clang-query-7.0 \ | |
--slave /usr/bin/modularize modularize /usr/bin/modularize-7.0 \ | |
--slave /usr/bin/sancov sancov /usr/bin/sancov-7.0 \ | |
--slave /usr/bin/c-index-test c-index-test /usr/bin/c-index-test-7.0 \ | |
--slave /usr/bin/clang-reorder-fields clang-reorder-fields /usr/bin/clang-reorder-fields-7.0 \ | |
--slave /usr/bin/clang-change-namespace clang-change-namespace /usr/bin/clang-change-namespace-7.0 \ | |
--slave /usr/bin/clang-import-test clang-import-test /usr/bin/clang-import-test-7.0 \ | |
--slave /usr/bin/scan-build scan-build /usr/bin/scan-build-7.0 \ | |
--slave /usr/bin/scan-build-py scan-build-py /usr/bin/scan-build-py-7.0 \ | |
--slave /usr/bin/clang-cl clang-cl /usr/bin/clang-cl-7.0 \ | |
--slave /usr/bin/clang-rename clang-rename /usr/bin/clang-rename-7.0 \ | |
--slave /usr/bin/find-all-symbols find-all-symbols /usr/bin/find-all-symbols-7.0 \ | |
--slave /usr/bin/lldb lldb /usr/bin/lldb-7.0 \ | |
--slave /usr/bin/lldb-server lldb-server /usr/bin/lldb-server-7.0 | |
# llvm-6.0 and clang-6.0 | |
sudo update-alternatives \ | |
--install /usr/lib/llvm llvm /usr/lib/llvm-6.0 30 \ | |
--slave /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-6.0 \ | |
--slave /usr/bin/llvm-ar llvm-ar /usr/bin/llvm-ar-6.0 \ | |
--slave /usr/bin/llvm-as llvm-as /usr/bin/llvm-as-6.0 \ | |
--slave /usr/bin/llvm-bcanalyzer llvm-bcanalyzer /usr/bin/llvm-bcanalyzer-6.0 \ | |
--slave /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-6.0 \ | |
--slave /usr/bin/llvm-diff llvm-diff /usr/bin/llvm-diff-6.0 \ | |
--slave /usr/bin/llvm-dis llvm-dis /usr/bin/llvm-dis-6.0 \ | |
--slave /usr/bin/llvm-dwarfdump llvm-dwarfdump /usr/bin/llvm-dwarfdump-6.0 \ | |
--slave /usr/bin/llvm-extract llvm-extract /usr/bin/llvm-extract-6.0 \ | |
--slave /usr/bin/llvm-link llvm-link /usr/bin/llvm-link-6.0 \ | |
--slave /usr/bin/llvm-mc llvm-mc /usr/bin/llvm-mc-6.0 \ | |
--slave /usr/bin/llvm-mcmarkup llvm-mcmarkup /usr/bin/llvm-mcmarkup-6.0 \ | |
--slave /usr/bin/llvm-nm llvm-nm /usr/bin/llvm-nm-6.0 \ | |
--slave /usr/bin/llvm-objdump llvm-objdump /usr/bin/llvm-objdump-6.0 \ | |
--slave /usr/bin/llvm-ranlib llvm-ranlib /usr/bin/llvm-ranlib-6.0 \ | |
--slave /usr/bin/llvm-readobj llvm-readobj /usr/bin/llvm-readobj-6.0 \ | |
--slave /usr/bin/llvm-rtdyld llvm-rtdyld /usr/bin/llvm-rtdyld-6.0 \ | |
--slave /usr/bin/llvm-size llvm-size /usr/bin/llvm-size-6.0 \ | |
--slave /usr/bin/llvm-stress llvm-stress /usr/bin/llvm-stress-6.0 \ | |
--slave /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-6.0 \ | |
--slave /usr/bin/llvm-tblgen llvm-tblgen /usr/bin/llvm-tblgen-6.0 | |
sudo update-alternatives \ | |
--install /usr/bin/clang clang /usr/bin/clang-6.0 30 \ | |
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-6.0 \ | |
--slave /usr/bin/lld lld /usr/bin/lld-6.0 \ | |
--slave /usr/bin/clang-format clang-format /usr/bin/clang-format-6.0 \ | |
--slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-6.0 \ | |
--slave /usr/bin/clang-tidy-diff.py clang-tidy-diff.py /usr/bin/clang-tidy-diff-6.0.py \ | |
--slave /usr/bin/clang-include-fixer clang-include-fixer /usr/bin/clang-include-fixer-6.0 \ | |
--slave /usr/bin/clang-offload-bundler clang-offload-bundler /usr/bin/clang-offload-bundler-6.0 \ | |
--slave /usr/bin/clangd clangd /usr/bin/clangd-6.0 \ | |
--slave /usr/bin/clang-check clang-check /usr/bin/clang-check-6.0 \ | |
--slave /usr/bin/scan-view scan-view /usr/bin/scan-view-6.0 \ | |
--slave /usr/bin/clang-apply-replacements clang-apply-replacements /usr/bin/clang-apply-replacements-6.0 \ | |
--slave /usr/bin/clang-query clang-query /usr/bin/clang-query-6.0 \ | |
--slave /usr/bin/modularize modularize /usr/bin/modularize-6.0 \ | |
--slave /usr/bin/sancov sancov /usr/bin/sancov-6.0 \ | |
--slave /usr/bin/c-index-test c-index-test /usr/bin/c-index-test-6.0 \ | |
--slave /usr/bin/clang-reorder-fields clang-reorder-fields /usr/bin/clang-reorder-fields-6.0 \ | |
--slave /usr/bin/clang-change-namespace clang-change-namespace /usr/bin/clang-change-namespace-6.0 \ | |
--slave /usr/bin/clang-import-test clang-import-test /usr/bin/clang-import-test-6.0 \ | |
--slave /usr/bin/scan-build scan-build /usr/bin/scan-build-6.0 \ | |
--slave /usr/bin/scan-build-py scan-build-py /usr/bin/scan-build-py-6.0 \ | |
--slave /usr/bin/clang-cl clang-cl /usr/bin/clang-cl-6.0 \ | |
--slave /usr/bin/clang-rename clang-rename /usr/bin/clang-rename-6.0 \ | |
--slave /usr/bin/find-all-symbols find-all-symbols /usr/bin/find-all-symbols-6.0 \ | |
--slave /usr/bin/lldb lldb /usr/bin/lldb-6.0 \ | |
--slave /usr/bin/lldb-server lldb-server /usr/bin/lldb-server-6.0 | |
# llvm-5.0 and clang-5.0 | |
sudo update-alternatives \ | |
--install /usr/lib/llvm llvm /usr/lib/llvm-5.0 20 \ | |
--slave /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-5.0 \ | |
--slave /usr/bin/llvm-ar llvm-ar /usr/bin/llvm-ar-5.0 \ | |
--slave /usr/bin/llvm-as llvm-as /usr/bin/llvm-as-5.0 \ | |
--slave /usr/bin/llvm-bcanalyzer llvm-bcanalyzer /usr/bin/llvm-bcanalyzer-5.0 \ | |
--slave /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-5.0 \ | |
--slave /usr/bin/llvm-diff llvm-diff /usr/bin/llvm-diff-5.0 \ | |
--slave /usr/bin/llvm-dis llvm-dis /usr/bin/llvm-dis-5.0 \ | |
--slave /usr/bin/llvm-dwarfdump llvm-dwarfdump /usr/bin/llvm-dwarfdump-5.0 \ | |
--slave /usr/bin/llvm-extract llvm-extract /usr/bin/llvm-extract-5.0 \ | |
--slave /usr/bin/llvm-link llvm-link /usr/bin/llvm-link-5.0 \ | |
--slave /usr/bin/llvm-mc llvm-mc /usr/bin/llvm-mc-5.0 \ | |
--slave /usr/bin/llvm-mcmarkup llvm-mcmarkup /usr/bin/llvm-mcmarkup-5.0 \ | |
--slave /usr/bin/llvm-nm llvm-nm /usr/bin/llvm-nm-5.0 \ | |
--slave /usr/bin/llvm-objdump llvm-objdump /usr/bin/llvm-objdump-5.0 \ | |
--slave /usr/bin/llvm-ranlib llvm-ranlib /usr/bin/llvm-ranlib-5.0 \ | |
--slave /usr/bin/llvm-readobj llvm-readobj /usr/bin/llvm-readobj-5.0 \ | |
--slave /usr/bin/llvm-rtdyld llvm-rtdyld /usr/bin/llvm-rtdyld-5.0 \ | |
--slave /usr/bin/llvm-size llvm-size /usr/bin/llvm-size-5.0 \ | |
--slave /usr/bin/llvm-stress llvm-stress /usr/bin/llvm-stress-5.0 \ | |
--slave /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-5.0 \ | |
--slave /usr/bin/llvm-tblgen llvm-tblgen /usr/bin/llvm-tblgen-5.0 | |
sudo update-alternatives \ | |
--install /usr/bin/clang clang /usr/bin/clang-5.0 20 \ | |
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-5.0 \ | |
--slave /usr/bin/lld lld /usr/bin/lld-5.0 \ | |
--slave /usr/bin/clang-format clang-format /usr/bin/clang-format-5.0 \ | |
--slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-5.0 \ | |
--slave /usr/bin/clang-tidy-diff.py clang-tidy-diff.py /usr/bin/clang-tidy-diff-5.0.py \ | |
--slave /usr/bin/clang-include-fixer clang-include-fixer /usr/bin/clang-include-fixer-5.0 \ | |
--slave /usr/bin/clang-offload-bundler clang-offload-bundler /usr/bin/clang-offload-bundler-5.0 \ | |
--slave /usr/bin/clangd clangd /usr/bin/clangd-5.0 \ | |
--slave /usr/bin/clang-check clang-check /usr/bin/clang-check-5.0 \ | |
--slave /usr/bin/scan-view scan-view /usr/bin/scan-view-5.0 \ | |
--slave /usr/bin/clang-apply-replacements clang-apply-replacements /usr/bin/clang-apply-replacements-5.0 \ | |
--slave /usr/bin/clang-query clang-query /usr/bin/clang-query-5.0 \ | |
--slave /usr/bin/modularize modularize /usr/bin/modularize-5.0 \ | |
--slave /usr/bin/sancov sancov /usr/bin/sancov-5.0 \ | |
--slave /usr/bin/c-index-test c-index-test /usr/bin/c-index-test-5.0 \ | |
--slave /usr/bin/clang-reorder-fields clang-reorder-fields /usr/bin/clang-reorder-fields-5.0 \ | |
--slave /usr/bin/clang-change-namespace clang-change-namespace /usr/bin/clang-change-namespace-5.0 \ | |
--slave /usr/bin/clang-import-test clang-import-test /usr/bin/clang-import-test-5.0 \ | |
--slave /usr/bin/scan-build scan-build /usr/bin/scan-build-5.0 \ | |
--slave /usr/bin/scan-build-py scan-build-py /usr/bin/scan-build-py-5.0 \ | |
--slave /usr/bin/clang-cl clang-cl /usr/bin/clang-cl-5.0 \ | |
--slave /usr/bin/clang-rename clang-rename /usr/bin/clang-rename-5.0 \ | |
--slave /usr/bin/find-all-symbols find-all-symbols /usr/bin/find-all-symbols-5.0 \ | |
--slave /usr/bin/lldb lldb /usr/bin/lldb-5.0 \ | |
--slave /usr/bin/lldb-server lldb-server /usr/bin/lldb-server-5.0 | |
# llvm-4.0 and clang-4.0 | |
sudo update-alternatives \ | |
--install /usr/lib/llvm llvm /usr/lib/llvm-4.0 10 \ | |
--slave /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-4.0 \ | |
--slave /usr/bin/llvm-ar llvm-ar /usr/bin/llvm-ar-4.0 \ | |
--slave /usr/bin/llvm-as llvm-as /usr/bin/llvm-as-4.0 \ | |
--slave /usr/bin/llvm-bcanalyzer llvm-bcanalyzer /usr/bin/llvm-bcanalyzer-4.0 \ | |
--slave /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-4.0 \ | |
--slave /usr/bin/llvm-diff llvm-diff /usr/bin/llvm-diff-4.0 \ | |
--slave /usr/bin/llvm-dis llvm-dis /usr/bin/llvm-dis-4.0 \ | |
--slave /usr/bin/llvm-dwarfdump llvm-dwarfdump /usr/bin/llvm-dwarfdump-4.0 \ | |
--slave /usr/bin/llvm-extract llvm-extract /usr/bin/llvm-extract-4.0 \ | |
--slave /usr/bin/llvm-link llvm-link /usr/bin/llvm-link-4.0 \ | |
--slave /usr/bin/llvm-mc llvm-mc /usr/bin/llvm-mc-4.0 \ | |
--slave /usr/bin/llvm-mcmarkup llvm-mcmarkup /usr/bin/llvm-mcmarkup-4.0 \ | |
--slave /usr/bin/llvm-nm llvm-nm /usr/bin/llvm-nm-4.0 \ | |
--slave /usr/bin/llvm-objdump llvm-objdump /usr/bin/llvm-objdump-4.0 \ | |
--slave /usr/bin/llvm-ranlib llvm-ranlib /usr/bin/llvm-ranlib-4.0 \ | |
--slave /usr/bin/llvm-readobj llvm-readobj /usr/bin/llvm-readobj-4.0 \ | |
--slave /usr/bin/llvm-rtdyld llvm-rtdyld /usr/bin/llvm-rtdyld-4.0 \ | |
--slave /usr/bin/llvm-size llvm-size /usr/bin/llvm-size-4.0 \ | |
--slave /usr/bin/llvm-stress llvm-stress /usr/bin/llvm-stress-4.0 \ | |
--slave /usr/bin/llvm-symbolizer llvm-symbolizer /usr/bin/llvm-symbolizer-4.0 \ | |
--slave /usr/bin/llvm-tblgen llvm-tblgen /usr/bin/llvm-tblgen-4.0 | |
sudo update-alternatives \ | |
--install /usr/bin/clang clang /usr/bin/clang-4.0 10 \ | |
--slave /usr/bin/clang++ clang++ /usr/bin/clang++-4.0 \ | |
--slave /usr/bin/lld lld /usr/bin/lld-4.0 \ | |
--slave /usr/bin/clang-format clang-format /usr/bin/clang-format-4.0 \ | |
--slave /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-4.0 \ | |
--slave /usr/bin/clang-tidy-diff.py clang-tidy-diff.py /usr/bin/clang-tidy-diff-4.0.py \ | |
--slave /usr/bin/clang-include-fixer clang-include-fixer /usr/bin/clang-include-fixer-4.0 \ | |
--slave /usr/bin/clang-offload-bundler clang-offload-bundler /usr/bin/clang-offload-bundler-4.0 \ | |
--slave /usr/bin/clangd clangd /usr/bin/clangd-4.0 \ | |
--slave /usr/bin/clang-check clang-check /usr/bin/clang-check-4.0 \ | |
--slave /usr/bin/scan-view scan-view /usr/bin/scan-view-4.0 \ | |
--slave /usr/bin/clang-apply-replacements clang-apply-replacements /usr/bin/clang-apply-replacements-4.0 \ | |
--slave /usr/bin/clang-query clang-query /usr/bin/clang-query-4.0 \ | |
--slave /usr/bin/modularize modularize /usr/bin/modularize-4.0 \ | |
--slave /usr/bin/sancov sancov /usr/bin/sancov-4.0 \ | |
--slave /usr/bin/c-index-test c-index-test /usr/bin/c-index-test-4.0 \ | |
--slave /usr/bin/clang-reorder-fields clang-reorder-fields /usr/bin/clang-reorder-fields-4.0 \ | |
--slave /usr/bin/clang-change-namespace clang-change-namespace /usr/bin/clang-change-namespace-4.0 \ | |
--slave /usr/bin/clang-import-test clang-import-test /usr/bin/clang-import-test-4.0 \ | |
--slave /usr/bin/scan-build scan-build /usr/bin/scan-build-4.0 \ | |
--slave /usr/bin/scan-build-py scan-build-py /usr/bin/scan-build-py-4.0 \ | |
--slave /usr/bin/clang-cl clang-cl /usr/bin/clang-cl-4.0 \ | |
--slave /usr/bin/clang-rename clang-rename /usr/bin/clang-rename-4.0 \ | |
--slave /usr/bin/find-all-symbols find-all-symbols /usr/bin/find-all-symbols-4.0 \ | |
--slave /usr/bin/lldb lldb /usr/bin/lldb-4.0 \ | |
--slave /usr/bin/lldb-server lldb-server /usr/bin/lldb-server-4.0 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment