diff options
Diffstat (limited to 'dev/c/index.html')
-rw-r--r-- | dev/c/index.html | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/dev/c/index.html b/dev/c/index.html new file mode 100644 index 0000000..09374c6 --- /dev/null +++ b/dev/c/index.html @@ -0,0 +1,103 @@ +<!DOCTYPE html> +<html dir="ltr" lang="en"> + <head> + <meta charset='utf-8'> + <title>C & GDB</title> + </head> + <body> + <a href="../index.html">Development Index</a> + + <h1>C & GDB</h1> + + <p><a href="http://blog.fourthbit.com/2013/06/18/creating-an-open-source-program-in-c-with-autotools-part-1-of-2/">C program with autotools</a> + </p> + + <pre> + $ touch NEWS README AUTHORS ChangeLog + $ mkdir -p src/bin src/lib + </pre> + + <p> + <a href="http://web.eecs.umich.edu/~sugih/pointers/gdbQS.html">GDB Quick Start</a>, + <a href="https://www.hackerschool.com/blog/5-learning-c-with-gdb">Learning C with GDB</a> + and <a href="http://www.dirac.org/linux/gdb/02a-Memory_Layout_And_The_Stack.php">Memory Layout and the Stack</a> + are great sources of introductory information.</a> + </p> + + <p>To use gdb you need to compile program with -g flag. To + debug a program;</p> + + <pre> + gdb program + </pre> + + <p>If the program needs arguments you can set it;</p> + + <pre> + (gdb)set args -parameter1 -parameter2 + </pre> + + <p>To start the program you can type run, this way gdb + will try to run the program until the end. If program + crash, gdb will stop it for debuging.</p> + + <pre> + (gdb) run + </pre> + + <pre> + n - execute next line + s - step in next line + b - backtrace + info locals + print + x + </pre> + + <h2>SysCalls</h2> + + <pre>catch syscall open</pre> + + <h2>Threads</h2> + + <p>When new thread is created you receive + a notification. To get information about + threads;</p> + + <pre> + info threads + </pre> + + <p>To select thread;</p> + + <pre> + thread 1 + </pre> + + <p><a href=" http://ftp.gnu.org/old-gnu/Manuals/gdb/html_node/gdb_39.html#SEC40">Stopping and Starting</a> + multi-thread programs</p> + + <pre> + break linespec thread threadno + </pre> + + <h2>Strace</h2> + + <pre> + strace -c ./program + </pre> + + + <a href="../index.html">Development Index</a> + <p> + This is part of the c9-doc Manual. + Copyright (C) 2016 + c9 team. + See the file <a href="../../fdl-1.3-standalone.html">Gnu Free Documentation License</a> + for copying conditions.</p> + + + </body> + +</html> + |