Topic: Compiling and debugging OOFEM in linux

Hi all,

1- I want to know that the developers of OOFEM use which software for the debugging and compiling the OOFEM code in Linux?

2-There are lots of files and folders in the src folder. How can I find out their connection and interaction with each other?

3- Which software do you use to compile and release the windows version?

Thanks,

Re: Compiling and debugging OOFEM in linux

1. I use KDevelop for an IDE. It integrates nicely with CMake projects.

2. You can run the simulation in debug mode and step through it. Basically, the engineering model controls the basic simulation strategy, calling all the other components to piece together a complete simulation.
There are also the diagrams in the API documentation, but those are cumbersome and way to detailed to be of any real use if you ask me.
For example, http://www.oofem.org/resources/doc/oofe … tatic.html
The inheritance diagrams are easy to grasp, but the collaboration diagram is not really useful at all. (In fact, I wonder if it's due to us not hiding the protected/private variables, so the collaboration diagram goes overboard)

The old programmers manual is quite dated, so I can't really recommend that one.


3. Newer MinGW or visual studio should both be able to do it, but I don't know for sure what Borek used.

Re: Compiling and debugging OOFEM in linux

Thanks Mikael

Kdevelop is great, but when I use the debug mode, it becomes very very slow and stepping into (F11) takes about 20 sec from one line to another.
Is this true for your system, too?

Re: Compiling and debugging OOFEM in linux

Not at all, during startup it might take a few seconds, but the rest of basically instant (unless I'm stepping over a very expensive operation, like factorization the stiffness matrix)

Re: Compiling and debugging OOFEM in linux

Mikael Öhman wrote:

1. I use KDevelop for an IDE. It integrates nicely with CMake projects.

2. You can run the simulation in debug mode and step through it. Basically, the engineering model controls the basic simulation strategy, calling all the other components to piece together a complete simulation.
There are also the diagrams in the API documentation, but those are cumbersome and way to detailed to be of any real use if you ask me.
For example, http://www.oofem.org/resources/doc/oofe … tatic.html
The inheritance diagrams are easy to grasp, but the collaboration diagram is not really useful at all. (In fact, I wonder if it's due to us not hiding the protected/private variables, so the collaboration diagram goes overboard)

The old programmers manual is quite dated, so I can't really recommend that one.


3. Newer MinGW or visual studio should both be able to do it, but I don't know for sure what Borek used.

Dear Mikael,
Thanks for sharing your setup for debugging OOFEM.
I have recently cloned the git from the repository and isntalled KDEVELOP in Ubuntu. Is there any document showing how the debugging process is typically done? One needs an input file, where to point to that input file, for example during the debugging process?

It would be highgly appreciated if you could point out the right direction. I am really eager to do some OOFEM debugging and see how the code works...
Cheers!.

Re: Compiling and debugging OOFEM in linux

Hi,

try to look at KDEVELOP documentation, https://docs.kde.org/trunk5/en/extragea … velop.html

Re: Compiling and debugging OOFEM in linux

nitramkaroh wrote:

Hi,

try to look at KDEVELOP documentation, https://docs.kde.org/trunk5/en/extragea … velop.html

Thanks for your reply. I actually "know" or at least have tried how to debug a gcc compiled with g-flag using kdevelop. However, how to debug oofem with a specific input file? Which file to debug? Those instructions would be helpful.
Thanks!.

Re: Compiling and debugging OOFEM in linux

I am able to help you with KDEVELOP, as I don't know this tool. To debug oofem, I am using gdb within emacs.

You should be able to find a way how to specify input parameters in the KDEVOP documentation. Which file to debug, e.g., where to put a breakpoint depends on which problem you run and what you want to debug, e.g., element, material, engineering model...

Re: Compiling and debugging OOFEM in linux

nitramkaroh wrote:

I am able to help you with KDEVELOP, as I don't know this tool. To debug oofem, I am using gdb within emacs.

You should be able to find a way how to specify input parameters in the KDEVOP documentation. Which file to debug, e.g., where to put a breakpoint depends on which problem you run and what you want to debug, e.g., element, material, engineering model...

I understand, no worries. Thank you for your messages. If there is any info about how to do it using emacs, it would be appreciated. Thanks again!.