I am asking this question is because I need to modify an open source software and I completely have no idea on how to start the project.
Here is more details.
I usually works in Linux and use GNU compiler (g++, gfortran, etc) and Intel compiler (icc and ifort). I can write fortran and c/c++ programs. So far, the project that I wrote is less than 10 files (with vim, no IDE so far). I usually compile them separately and put them together as a single executable file.
Now I need to modify an open source software (A software for scientific calculation. No GUI. And it reads an input file with all calculation parameters.). The source of it contains hundreds of files which is too much for me. It does come with a configure script and some makefiles. And it use both c and fortran codes (I suspect the c code calls some fortran subroutines.). But I haven’t try to use fortran subroutines in c/c++.
I need to understand it, make a small modification and add some functions or subroutines in the software as new features.
Could you tell me where to start? Is there an IDE which can “import” the software as a project? Or some handy tool to draw the connections between different files? (It is horrible to read the configure script and makefile first, then start to work.)
Thanks.
You could try speaking to the maintainer of the project, or asking for guidance on their discussion forum if one exists. Don’t expect them to just tell you want to edit, however. You’re more likely to get help if you’ve at least tried to understand what the source code is doing and how it hangs together, particularly since, in my opinion at least, you really ought to understand what it currently does before you change it.
Having said that, if the change you need to make would be useful to other people, the maintainers may accept your proposed changes as a feature request.