Как предложил @Tommy, вы должны использовать update-alternatives
.
Он присваивает значения каждому программному обеспечению семейства, так что он определяет порядок, в котором приложения будут вызываться.
Он используется для поддержки разных версий одного и того же программного обеспечения в системе. В вашем случае вы сможете использовать несколько склонений gcc
, и одно будет предпочтительным.
Чтобы выяснить текущие приоритеты gcc, введите команду, указанную в комментарии @ tripleee:
update-alternatives --query gcc
Теперь обратите внимание на присвоенный приоритет, gcc-4.4
потому что вам нужно присвоить более высокий приоритет gcc-3.3
.
Чтобы установить альтернативы, у вас должно быть что-то вроде этого (при условии, что ваша gcc
установка находится в /usr/bin/gcc-3.3
, и gcc-4.4
приоритет меньше 50) :
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-3.3 50
--редактировать--
Наконец, вы также можете использовать интерактивный интерфейс, update-alternatives
чтобы легко переключаться между версиями. Введите update-alternatives --config gcc
запрос на выбор версии gcc, которую вы хотите использовать, среди установленных.
- редактировать 2 -
Теперь, чтобы исправить переменную среды CXX в масштабе всей системы, вам нужно поместить строку, указанную @ DipSwitch в свой .bashrc
файл (это применит изменение только для вашего пользователя, что, на мой взгляд, безопаснее):
echo 'export CXX=/usr/bin/gcc-3.3' >> ~/.bashrc
CXX=gcc-3.3
или,export CXX=gcc-3.3
а затем,make
когда вы измените его глобально,update-alternatives
он уже будет использовать gcc-3.3, и это не обязательно.