tags:

views:

139

answers:

3

I downloaded pidgin source code and i don't know where to start from ..

Can any one pls ;) point the right way to understand that program ?

and also tell how to compile it on windows system .. it has manuals to compile on a Linux system but not windows .

+1  A: 

In my opinion, you should follow the manual for compilation in Linux, which will be a lot easier than compiling in Windows. Then, start reading the documentation/comments in the code and try to see if you can modify it.

Alan Haggai Alavi
thanks alan .. this might really help .
Sakti
You are welcome, Sakti.
Alan Haggai Alavi
+1  A: 

There is a guide to building on Windows on their developer trac site. And as far as where to "start from", you may be best served going into their IRC channel #pidgin on Freenode and asking for help from some of the developers there. They may be able to point you in the best direction if not help you directly.

Daniel DiPaolo
Thanks daniel .
Sakti
+3  A: 
cd pidgin
grep "int main(" *.c -Rn

Or whatever the Windows equivalent for "search through all files with a .c extension for the text string 'int main(', while recursing into subdirectories, and display each and every match showing the file and line number.

Running the above in pidgin-2.7.1/pidgin gives gtkmain.c:521:int main(int argc, char *argv[]). The file gtkmain.c is just under 1000 lines, so maybe not the best place to start.

But the principle, of using the command line to search for functions in the code, has helped me in the past work my way around other peoples code (though admittedly, when I suggested this to you, I had not realized Pidgin was a complex as it is).

So I now consider it important to ask: to what end do you wish to understand the code?

Why do you want to edit the code?

Do you wish to provide GUI enhancements, or new features within the backend?

You really need to come up with something concrete to work towards. Run the program and identify something you want to do to it (and maybe let us know too). Once you have identified something through actually using Pidgin that you wish to modify in some way, then you can start looking in the code trying to figure out where that thing happens. Search within the code for text strings which appear in the GUI dialogs, or in the menus, or even the dialog window title.

Once you have found the code for a particular GUI dialog associated with whatever it is you wish to modify, perform another search in the code for references to that GUI dialog, and so on, and so on.

Making inroads into larger projects is not easy.

There is also the more experimental approach of editing a file and changing something, anything, re-compiling, and seeing what effects it might have. Though perhaps not the best of ideas with a networking program ;-)

James Morris
Ctrl+F, fill in the appropriate fields, then watch the animated dog wag his tail for the next half hour. I hate him almost as much as I loathe the paper clip.
Thanatos
there are approx. 177 files with main function and no files with pidgin_function ...whats your suggestion james?
Sakti
@Sakti: I've edited my answer.
James Morris
I wanted to add detachable libpurple session .. actually it is one of the chosen proposals for this years gsoc and since i have nothing important going on this month , I decided to have a look on this .;)
Sakti
Good luck Sakti, sorry I can't help further.
James Morris