2015-10-20 4 views
2

Я считаю, что мой вопрос похож на этот пост: Linux: cannot find lgfortran though gfortran is installed. Однако, поскольку предлагаемый ответ не устраняет мою проблему, похоже, нет другого выбора, кроме как попросить его снова, для отчаянного Linux-новичка, подобного мне.Код: Блоки не могут обнаружить gfortran, хотя установлены

В этом проблема. Я установил GNU компилятор Фортрана 4.8.4 и может найти его в терминале

$ which gfortran-4.8 
/usr/bin/gfortran-4.8 

и

$ locate gfortran 
/usr/bin/gfortran-4.7 
/usr/bin/gfortran-4.8 
/usr/bin/x86_64-linux-gnu-gfortran-4.7 
/usr/bin/x86_64-linux-gnu-gfortran-4.8 
/usr/lib/gcc/x86_64-linux-gnu/4.7/libgfortran.a 
/usr/lib/gcc/x86_64-linux-gnu/4.7/libgfortran.so 
/usr/lib/gcc/x86_64-linux-gnu/4.7/libgfortran.spec 
/usr/lib/gcc/x86_64-linux-gnu/4.7/libgfortranbegin.a 
/usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.a 
/usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.so 
/usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortran.spec 
/usr/lib/gcc/x86_64-linux-gnu/4.8/libgfortranbegin.a 
/usr/lib/x86_64-linux-gnu/libgfortran.so.3 
/usr/lib/x86_64-linux-gnu/libgfortran.so.3.0.0 
/usr/share/doc/gfortran-4.7 
/usr/share/doc/gfortran-4.8 
/usr/share/doc/libgfortran-4.7-dev 
/usr/share/doc/libgfortran-4.8-dev 
/usr/share/doc/libgfortran3 
/usr/share/man/man1/gfortran-4.7.1.gz 
/usr/share/man/man1/gfortran-4.8.1.gz 
/usr/share/man/man1/x86_64-linux-gnu-gfortran-4.7.1.gz 
/usr/share/man/man1/x86_64-linux-gnu-gfortran-4.8.1.gz 
/var/cache/apt/archives/gfortran-4.7_4.7.3-12ubuntu1_amd64.deb 
/var/cache/apt/archives/gfortran-4.8_4.8.4-2ubuntu1~14.04_amd64.deb 
/var/cache/apt/archives/libgfortran-4.7-dev_4.7.3-12ubuntu1_amd64.deb 
/var/cache/apt/archives/libgfortran-4.8-dev_4.8.4-2ubuntu1~14.04_amd64.deb 
/var/cache/apt/archives/libgfortran3_4.8.4-2ubuntu1~14.04_amd64.deb 
/var/lib/dpkg/info/gfortran-4.7.list 
/var/lib/dpkg/info/gfortran-4.7.md5sums 
/var/lib/dpkg/info/gfortran-4.8.list 
/var/lib/dpkg/info/gfortran-4.8.md5sums 
/var/lib/dpkg/info/libgfortran-4.7-dev:amd64.list 
/var/lib/dpkg/info/libgfortran-4.7-dev:amd64.md5sums 
/var/lib/dpkg/info/libgfortran-4.8-dev:amd64.list 
/var/lib/dpkg/info/libgfortran-4.8-dev:amd64.md5sums 
/var/lib/dpkg/info/libgfortran3:amd64.list 
/var/lib/dpkg/info/libgfortran3:amd64.md5sums 
/var/lib/dpkg/info/libgfortran3:amd64.postinst 
/var/lib/dpkg/info/libgfortran3:amd64.postrm 
/var/lib/dpkg/info/libgfortran3:amd64.shlibs 
/var/lib/dpkg/info/libgfortran3:amd64.symbols 

Так gfortran кажется установлен, хотя я не понимаю, почему 4,7 версии все еще там после моего удаления его ,

В настройки глобальных Compiler параметров кода: блоки, когда я выбираю GNU Fortran Compiler, и его ToolChain Исполняемые, я попробовал каталог установки как

/usr 

/usr/bin 

и

/usr/lib/gcc/x86_64-linux-gnu/4.8/ 

как предложено в предыдущая статья, Код: Блоки говорят мне

could not auto-detect installation path of "GNU Fortran Compiler"..... 

Подробнее о компилировании (см. предложение Майка).

Details of tool chain executables

А вот полный список компиляторов на моем компьютере:

List of Compliers

+0

Добро пожаловать в SO! Когда вы утверждаете, что ваш пост не дублируется, пожалуйста, покажите, как существующие сообщения не могут решить вашу проблему. –

+0

@MarioTrucco Как я уже сказал, я пробовал установочный каталог C: B как '/ usr/lib/gcc/x86_64-linux-gnu/4.8/', и это не сработало. –

+0

Пожалуйста, добавьте эту информацию: точное имя компилятора показано в ** GNU Fortran Compiler ** -> ** Исполняемые файлы программных файлов ** -> ** Программные файлы ** -> ** C Компилятор ** –

ответ

1

Ваша проводка показывает, что у вас есть и gfortran-4.7 и gfortran-4.8 установлен под /usr/bin.

Наличие нескольких компиляторов GCC Fortran (или нескольких компиляторов C или C++) - это совершенно корректный и обычный. Code :: Blocks позволит вам настроить столько же компиляторов Fortran, сколько у вас есть, если вы дадите им разные имена . Это также прекрасно, если вы просто хотите сконфигурировать один из них в качестве компилятора GNU Fortran и игнорировать остальные.

Но в любом случае Code :: Blocks должен иметь возможность однозначно идентифицировать установленный компилятор , который вы вызываете «Компилятор GNU Fortran». Вы определили исходный каталог наклеиванию составителей в /usr/bin и покинули программных файлы имени компилятора в gfortran.

Там нет такого компилятора, как /usr/bin/gfortran в вашей системе, и нет программы под названием gfortran в любом месте PATH. Вы имеют /usr/bin/gfortran-4.7 и /usr/bin/gfortran-4.8. Поскольку у вас есть , оба из них Code :: Blocks предполагают, что вы хотите их обоих. Он не может определить, какой из них вы хотите настроить как «Компилятор GNU Fortran».

Итак: -

  • Установить каталог установка составителей = /usr/bin
  • В файлы программы, изменить все вхождения gfortran в gfortran-4.8, если вы хотите "GNU Fortran Compiler" означает gfortran-4.8 ,
  • ОК вне.
+0

Спасибо Майку за такую ​​пошаговую инструкцию. Теперь я вижу номер версии. И теперь составлен Helloworld. Спасибо вам большое! –

+0

Добро пожаловать. Если вы хотите 4.7, а также 4.8, настроенные в C :: B, , перейдите к ** Глобальные настройки компилятора ** -> ** GNU Fortran Compiler ** -> ** Копировать **. Нажмите кнопку ** Копировать **, выберите псевдоним для 4.7, а затем сделайте очевидные изменения 4.8 -> 4.7 в конфигурации нового компилятора. –

 Смежные вопросы

  • Нет связанных вопросов^_^