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.
Core files will also be very useful for the developers other than yourself; if you are going to file a bug report, attach them, and in some cases your app binary.