我正在使用调用传统Fortran代码子例程的C代码函数。 Fortran代码子例程还调用其他C代码函数。我正在使用的代码并不是最漂亮的代码,但从头开始重新编写代码是相当具有挑战性的。
不幸的是,在程序中的某个地方发生了段错误,我想知道是否有一个带有漂亮GUI的软件工具可以用来准确地确定C和Fortran代码中的位置。
虽然我使用Open Watcom编译器在Windows上开发软件程序来编译C和Fortran代码,但是如果有可以使用的FOSS工具,我愿意将代码移到我的GNU / Linux盒子中。
或者,我想知道是否可以使用英特尔Composer XE套件直观地确定分段违规的位置。英特尔Composer XE套件包括C和Fortran编译器。
由于我正在使用C和Fortran代码,因此我需要在代码中指出segfault正在发生的某种情况。我并不特别想使用对printf()
函数的调用。
答案 0 :(得分:1)
这不是GUI,但valgrind是一个出色的内存调试工具。它不仅会告诉您段错误在哪一行(您应该能够使用任何调试器),而且每次访问未初始化或未分配的内存,或者发出各种其他错误时。您确实需要移植到Linux才能使用它。
答案 1 :(得分:1)
Windows上随英特尔Visual Fortran产品提供的Visual Studio集成允许对混合的Fortran和C代码进行GUI调试。
在Linux上,英特尔将自己的基于GUI的调试环境(idb)与其编译器产品一起发布。