Я хотел бы построить функции MEX из исходного кода C / C ++, чтобы разрешить доступ к скриптам MATLAB, но моя текущая версия Fedora имеет более новую и несовместимую GCC. Я попытался удалить установленный GCC и установить версию 4.7.x GCC с помощью sudo dnf gcc-4.7.x (с x = [1, 2, 3, 4]), но похоже, что ни одна из этих версий не размещена на репозитории пакетов Fedora.
Есть ли другой способ установить более старые версии GCC на более новые версии Fedora?
Вам придется скачать исходный код gcc и самостоятельно скомпилировать gcc. Репозитории Fedora зависят от версии. GCC из более ранних выпусков Fedora не включены в последующие выпуски Fedora.
Хотя возможно загрузить более ранние версии gcc вручную из соответствующего выпуска Fedora, маловероятно, что rpm согласится установить его из-за конфликтов версий. Возможно, что кто-то услужливо предложит использовать --force
принудительно установить несовместимую версию gcc. Такой совет, увы, вполне может привести к тому, что кирпич не загрузится.
Таким образом, единственный практический ответ — загрузить и собрать gcc самостоятельно; с пользовательской конфигурацией, которая устанавливает gcc в нестандартное расположение, чтобы избежать перезаписи установленной системы libstdc++
, Нетривиальная задача, сделав это сам несколько лет назад.
TL; DR: если вам нужно задать такой вопрос, это невозможно.
1) Вы можете установить столько версий gcc / g ++, сколько хотите, одновременно. 2) Не очень хорошая идея удалить системный компилятор.
Gcc-4.7: Просто установите [необходимые пакеты] из «Redhat devtoolset-1.1» http://linux.web.cern.ch/linux/devtoolset/ → → # wget -O /etc/yum.repos.d/slc6-devtoolset.repo http://linuxsoft.cern.ch/cern/devtoolset/slc6-devtoolset.repo
Devtoolset-1.1 и devtoolset-2 были созданы для RHEL6, поэтому мы должны установить несколько старых файлов для devtoolset- (1.1): compat-gmp-4.3.1-11.fc23.x86_64.rpm
, а также compat-mpfr-2.4.1-7.fc23.x86_64.rpm
…. Ссылки: compat-gmp https://drive.google.com/file/d/0B7S255p3kFXNbTBSS21jdWlvRXM/view?usp=sharing — Compat-MPFR https://drive.google.com/file/d/0B7S255p3kFXNOG8wYU1sY0lkQWc/view?usp=sharing
Затем вы можете установить 4 пакета из devtoolset-1.1 (gcc-c ++ и зависимости ,,, gcc и т. Д.) С помощью # dnf install --nogpgcheck devtoolset-1.1-gcc-c++
Включение gcc-4.7: $ scl enable devtoolset-1.1 bash
… а также gcc -v
скажет «gcc версия 4.7.2» (настройка действует до тех пор, пока вы не выйдете из терминала.)