GDB - Нет исходного файла с именем <что-то> - компилятор Intel

Я называю код Fortran 90 из кода AC. E сть main() (в c), который вызывает функцию-обертку в том же файле, которая вызывает подпрограмму на фортране (фактически в liblibrary.a). Я работаю над Linux. Теперь я использую gdb отладить исполняемый файл, но он не может найти файл main.c. Я добавил рабочий каталог, используя

directory /my/working/directory

но все равно говорится, что нет файла с именем main.c
Если я наберу list внутри gdb это показывает мне часть кода Fortran. Если я наберу show language, это говорит Текущий исходный язык auto; currently c,
Если я запускаю исполняемый файл, а затем прерываю его и смотрю на стек, он покажет мне c-функции, которые я вызываю, но он не будет указывать исходный файл, который вместо этого будет указывать для подпрограммы и функции fortran.
Я пытаюсь выяснить, правильно ли я передаю переменные из c в fortran и обратно, подозреваю, что нет.

То же самое происходит в idb, более менее. когда я пытаюсь сделать перерыв в main.c, он говорит not found, Я скомпилировал код Фортрана с этими флагами:

-g -O0 -check bounds -warn all -traceback -align all -align rec8byte

и c-код с:

-g -O0  -Wall

Все предложения приветствуются.

1 ответ

Решение

Здравствуйте, вам нужен дополнительный флаг для добавления отладочной информации в ваш исполняемый файл. Вот руководство для компилятора Intel: http://cache-www.intel.com/cd/00/00/34/75/347599_347599.pdf Пожалуйста, попробуйте -debug full как на странице 35 написано.

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