[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
5.1.9 “Cannot insert breakpoints”
Under some operating systems, breakpoints cannot be used in a program if any other process is running that program. In this situation, attempting to run or continue a program with a breakpoint causes No value for GDBN to print an error message:
Cannot insert breakpoints. The same program may be running in another process. |
When this happens, you have three ways to proceed:
- Remove or disable the breakpoints, then continue.
-
Suspend No value for GDBN, and copy the file containing your program to a new
name. Resume No value for GDBN and use the
exec-file
command to specify that No value for GDBN should run your program under that name. Then start your program again. - Relink your program so that the text segment is nonsharable, using the linker option ‘-N’. The operating system limitation may not apply to nonsharable executables.
A similar message can be printed if you request too many active hardware-assisted breakpoints and watchpoints:
Stopped; cannot insert breakpoints. You may have requested too many hardware breakpoints and watchpoints. |
This message is printed when you attempt to resume the program, since only then No value for GDBN knows exactly how many hardware breakpoints and watchpoints it needs to insert.
When this message is printed, you need to disable or remove some of the hardware-assisted breakpoints and watchpoints, and then continue.