I have a command line application that when run does not do what it is supposed to do and at a certain point leaves the message:
What does this mean? What should I do?
A segmentation fault is the result of a memory access violation. The program has referred to a memory address outside of what was allocated to it, and the OS kernel responds by killing the program with SIGSEGV.
This is a mistake, since there is no point in trying to access inaccessible memory (it cannot be done). Mistakes of this sort are easy to make, however, particularly in languages such as C and C++ (which account for a lot of common applications). It indicates a bug in either the program itself or a library it links to. If you wish to report the bug (do -- this helps), it is a good idea to include a backtrace of the events that led up to the seg fault.
To do this, you can run the program inside
A paragraph about copyright and licensing will appear, and at the end a prompt with the cursor:
The second line of output here is just an example. Now type
If it is longer, you'll only get a screenful at a time and there will be a
Someone will hopefully get back to you in not too long. Filing bugs is a usually appreciated.
This means that application has a bug. If you is a usual user, you should contact the vendor of the application. If your application comes with linux distribution your should create bug report for that distribution. If it were self-compiled application you should report bug to the author. If it is commercial app you should contact the support. If it is your application and you is a developer, you should:
Core file produced on the pp1 and pp2 will be very useful for the developers, if you going to create bug report, attach it and in some cases your app binary.