Установить программу с другим именем запуска

Я недавно установил Gfortran с apt-get install gfortran, но оказалось, что это последняя версия 4.9, которая несовместима с программным обеспечением, которое в первую очередь требовало gfortran. Поэтому я удалил его и попытался apt-get install gfortran-4.8, Проблема в том, что теперь он может быть запущен с gfortran-4.8 (очевидно) вместо gfortran что ожидается другим программным обеспечением.

Могу ли я заставить его работать с gfortran команда?

редактировать:

Я прочитал об псевдонимах и попытался настроить ~/.bash_aliases содержащий

alias gfortran='gfortran-4.8'

но без эффекта.

2 ответа

Решение

Я полагаю, вы используете что-то позже, чем Трасти. Это не проблема в Trusty, так как gfortran все еще на 4.8.

Предполагая, что понижение рейтинга не является реальным решением, я просто покажу вам, как у Trusty все продумано. Возможно, вы захотите проверить, что это похоже на то, что вы используете, чтобы убедиться, что мои выводы верны:

$ dpkg -S $(which gfortran) $(which gfortran-4.8)
gfortran: /usr/bin/gfortran
gfortran-4.8: /usr/bin/gfortran-4.8

$ file /usr/bin/gfortran
/usr/bin/gfortran: symbolic link to `gfortran-4.8'

Так что в основном здесь gfortran команда просто перенаправляет на /usr/bin/gfortran-4.8, Я ожидаю, что в вашей версии он перенаправляет на /usr/bin/gfortran-4.9,

Мы можем переопределить упакованные двоичные файлы пути, не касаясь их. Я предлагаю (и это может подорвать вещи, которые используют gfortran так что будьте осторожны) мы создаем новую символическую ссылку в /usr/local/bin (Обратите внимание local). Когда вы звоните gfortranсистема найдет /usr/local/bin/gfortran версия первая. Обратите внимание, что все, что звонит /usr/bin/gfortran явно все равно получит версию 4.9.

В любом случае, создать символическую ссылку очень просто:

sudo ln -s /usr/bin/gfortran-4.8 /usr/local/bin/gfortran

Это имеет приятный побочный эффект: вы можете оставить свои пакеты на месте, выполняя все зависимости, которые вам могут понадобиться. И обновления до gfortran пакет не уничтожит наши изменения.

Что вы можете сделать, это создать символическую ссылку (или "ярлык") для gfortran-4.8 и назовите ярлык gfortran,

Сначала выясни где gfortran-4.8 на самом деле находится. Вы делаете это, выполнив команду which gfortran-4.8, Допустим, вы получите вывод, подобный этому:

/usr/bin/gfortran-4.8

Чтобы создать ярлык, выполните следующую команду:

sudo ln -s /usr/bin/gfortran-4.8 /usr/bin/gfortran

Теперь вы (и другие программы, которые искали его) должны иметь возможность запустить программу, используя gfortran,

Другие вопросы по тегам