Here's a practical, minimal guide for using GDB in Ubuntu terminal — from launching to setting breakpoints and navigating your code. 🧰 Step 1: Compile with Debug Symbols Use -g and disable optimizations ( -O0 preferred for debugging): bash Copy Edit g++ -g -O0 -o myprog myprog.cpp 🚀 Step 2: Launch GDB bash Copy Edit gdb ./myprog You'll see a (gdb) prompt. 🎯 Step 3: Set Breakpoints You can set breakpoints in three main ways : ✅ a. At a function gdb Copy Edit (gdb) break main ✅ b. At a specific file and line gdb Copy Edit (gdb) break myprog.cpp:42 ✅ c. At a method in a class gdb Copy Edit (gdb) break MyClass::doSomething If the symbol is mangled (C++), GDB usually demangles automatically, especially if compiled with -g . ▶️ Step 4: Run the Program gdb Copy Edit (gdb) run 🧠Step 5: Navigate Command Meaning next or n Step over current line step or s Step into function call finish Run until current function returns continue or c Continue until...
Assumptions:
1. You are using Linux / Debian Server
2. You are using Compute Engine
3. You are using Google Domains
----------------------------------------------------------------------
Procedure:
1. Set $JAVA_HOME=<path to your java base directory>
2. Set $CATALINA_BASE=<path to your Tomcat / Tomee base directory>
3. Type command: $JAVA_HOME/bin/keytool -genkey -alias <server> -keyalg RSA -keysize <2048> -keystore <path to your keystore file.jks>
Note: When asked for your first and last name, give your website domain name like www.mohitkrgupta.dev
4. Type command: $JAVA_HOME/bin/keytool -certreq -alias <server> -file <csr.txt> -keystore <path to your keystore file.jks>
This will generate csr.txt key file to be submitted to Certifying Authority (ZeroSSL in this case)
5. Visit ZeroSSL site and copy-pase content of csr.txt and follow processes as mentioned in website to get your SSL keys
6. Your SSL key document will be available from there in .zip format, download and unzip it.
7. It will contain following files:
certificate.crt, and ca_bundle.crt.
8. Type Command: openssl crl2pkcs7 -nocrl -certfile <certificate.crt> -out <certificate.p7b> -certfile <ca_bundle.crt>
//(you will get certificate.p7b file in this way)
9. Type Command: JAVA_HOME/bin/keytool -import -alias <server> -file <certificate.p7b> -keystore <path to your keystore file.jks>
10. Type Command: sudo nano $CATALINA_BASE/conf/server.xml
11. Provide following lines in server.xml
<Connector port="443" maxHttpHeaderSize="8192" maxThreads="100"
minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
SSLEnabled="true" clientAuth="false"
sslProtocol="TLS" keyAlias="server"
keystoreFile="</home/newmkg/mohitkrgupta.dev.jks>"
keystorePass="<*************>" />
12. // restart tomc(at/ee) server
13. Check your working https:// website in your domain name
Work Done
Comments
Post a Comment
If you have any doubts, please let me know.