Как установить clang в качестве компилятора по умолчанию, используя альтернативы обновления - PullRequest
0 голосов
/ 22 апреля 2019

Я использую Ubuntu 18.04, и у меня есть две версии gcc / g ++, которые управляются с помощью альтернатив обновления:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8

Я могу переключить компилятор с помощью этой команды:

sudo update-alternatives --config gcc

Iзаметил, что у меня есть следующая цепочка для компилятора (в данном случае gcc-7 / g ++ - 7): /usr/bin/cc -> /etc/alternatives/cc -> /usr/bin/gcc -> /etc/alternatives/gcc -> /usr/bin/gcc-7 /usr/bin/c++ -> /etc/alternatives/c++ -> /usr/bin/g++ -> /etc/alternatives/g++ -> /usr/bin/g++-7

Я также установил clang-8 и clang ++ - 8, но /usr/bin содержит толькоclang-8 и clang ++ - 8, нет символической ссылки clang.Как мне добавить clang в инструменты обновления альтернатив?

1 Ответ

2 голосов
/ 22 апреля 2019

Clang не является версией GCC, поэтому его нельзя установить в качестве альтернативы для /usr/bin/gcc.Не пытайтесь переопределить это;Вы сломаете некоторые программы, которые требуют специфических для GCC функций, которые недоступны в Clang.

Clang может быть установлен в качестве альтернативы для /usr/bin/cc.Это стандартный способ установки компилятора Си, и он должен быть достаточно безопасным.(Несмотря на это, я не удивлюсь, если некоторые процессы сборки прекратятся из-за предположения, что /usr/bin/cc в системе Linux всегда GCC.)

...