Затмение с отладчиком Intel Fortran

Моя проблема заключается в следующем:

Я хочу использовать отладчик idb intel с eclipse, чтобы шаг за шагом проходить мой код, как idb -gui делает. Я уже пытался реализовать решение, которое я нашел, где я заменяю прямой вызов idb -gdb скриптом:

#!/bin/bash 
exec/usr/local/soft/intel/fc/10.0.025/bin/ifort/idb -gdb "$@" 

Это на самом деле работает, когда он запускает мою программу, пока она не доходит до командной строки. Теперь я получаю следующую ошибку:

Target request failed: {R,T}xThread terminated.

Именно тогда я потратил впустую целый день, пытаясь решить эту проблему, и решил опубликовать это. Кто-нибудь может помочь мне еще с некоторыми умными советами? как вы интегрировали idb в затмение?

ура, Дэвид

3 ответа

Решение

Не специалист, но в случае, если это поможет, эта ветка упоминает (хотя это для FORTRAN 11):

Я думал о твоей проблеме еще немного, и я думаю, что я не воспринял твою формулировку проблемы так буквально, как ты это хотел.
Вы говорите, что код, который вы не видите в отладчике, находится в MODULE файл определения? Если это так, я бы сказал, что проблема связана с общими ограничениями использования gdb в качестве отладчика Fortran. Если вы используете отладчик Intel, вы сможете перейти к сгенерированному на Intel Fortran коду, который содержится в MODULE,

Я вижу, вы используете версию 11.0 Intel Fortran. Есть несколько вариантов для вас.

  • Intel Fortran 11.0 поставляется с новой автономной версией графического интерфейса IDB. Вы можете использовать его, если не возражаете против построения в Eclipse, но отладки в другом инструменте. Вы вызываете новую версию GUI с "idb”, Если вы инициализировали свою среду для использования отладчика Intel.
  • Intel Fortran 11.0 также предоставляет версию отладчика для командной строки, которую вы можете вызвать с помощью команды "idbc”, Опять же, при условии, что вы инициализировали свою среду для использования отладчика Intel.
  • Третья альтернатива, которую вы можете попробовать, - это изменить конфигурацию запуска отладки в Photran, чтобы она вызывала idbc вместо gdb, Это не то, что официально поддерживается Intel, но когда я пытаюсь сделать это на примере, аналогичном тому, который, по моему мнению, имеет место, он работает нормально. Опять же, это не поддерживается Intel, поэтому, если вы столкнетесь с другими проблемами в этой конфигурации, не было бы никакой помощи. Если он работает достаточно хорошо для вас, он позволяет вам делать все в Eclipse / Photran.
    Если вы хотите попробовать это, инициализируйте свою среду для использования отладчика Intel, прежде чем запускать Eclipse, запустите Eclipse, откройте конфигурацию отладки и выберите вкладку отладчика. Затем в области "Параметры отладчика"MainВкладка, изменитьGDB debugger" от "gdbДоidbc".

В этой ветке также упоминается (в случае, если она имеет какое-либо влияние на вашу проблему):

idb GUI, кажется, запускает бэкэнд под названием iidb, который подражает gdb достаточно хорошо для Eclipse IDE.

iidb необходимо загрузить определенные общие библиотеки.
Я сделал это, добавив /opt/intel/Compiler/11.1/038/idb/lib/intel64 к переменной среды LD_LIBRARY_PATH до запуска Eclipse.
Ваш путь должен соответствовать вашему конкретному ifort монтаж.

В вашей конфигурации отладки, вкладка "Debugger, "поле"GDB debugger", заменить gdb с iidb, Если вы хотите, чтобы он остановился при запуске, попробуйте заменить основной на MAIN__,

Прошло девять лет с момента самого последнего ответа на этот вопрос. В настоящее время корпорация Intel выпустила наборы инструментов oneAPI в качестве инструментов разработки программного обеспечения следующего поколения, которые последовали за наборами инструментов Intel Parallel Studio XE и заменили их.

В этом случае Debuggerдолжно быть gdb-oneapiкак показано ниже:

      $ module load debugger
$ module list

Currently Loaded Modules:
  1) lmod   2) debugger/2021.5.0

$ which gdb-oneapi 
/opt/intel/oneapi/debugger/2021.5.0/gdb/intel64/bin/gdb-oneapi

Прошло 3 года с тех пор, как был задан вопрос, но этот обходной путь подойдет всем, у кого возникли проблемы с eclipse и id b, особенно в OS X.

Замена gdb с idbc на Debugger Вкладка в Eclipse отлично работает на Linux.

Если вы работаете в OS X 10.7+, где нет поддержки компилятора Intel Fortran в eclipse, создайте проект makefile, создайте цель с пользовательским makefile, используйте ifort с флагами -g -fpic -Wl,-no_pie (эти флаги необходимы для OS X 10.7+), замените gdb с idb и это в конечном итоге сработает.

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