1、g++常用命令:
(1)-g编译带调试信息的可执行文件
(2)-O[n] 优化源代码、
例子:g++ -O2 test.cpp
(3)-l用来指定程序要链接的库,-l参数紧接着就是库名,-L参数跟着的是库文件所在的目录名
例子:g++ -L/home/bing/mytestlibfolder -lmytest test.cpp
(4)-I 指定头文件搜索目录
例子:g++ -I/myinclude test.cpp
(5)-Wall 打印警告信息
(6)-w关闭警告信息
(7)-std=c++11 设置编译标准
(8)-o指定输出文件名
例子:g++ test.cpp -o test
(9)-D 定义DEBUG宏,可能文件中有DEBUG宏部分的相关信息,用个DEBUG来选择开启或关闭DEBUG
(10)使用 man gcc命令可以查看gcc英文使用手册
2、生成动态库文件并编译
(1)进入src目录
cd src
(2)生成动态库libswap.so
g++ Swap.cpp -I../include -fPIC -shared -o libSwap.so
(3)回到上级目录
cd ..
(4)链接,生成可执行文件:sharemain
g++ main.cpp -Iinclude -Lsrc -lSwap -o sharemain
3.链接静态库生成可执行文件
(1)进入src目录下
cd src
(2)汇编,生成Swap.o文件
g++Swap.cpp -c -I../include
(3)生成静态库libSwap.a
ar rs libSwap.a Swap.o
(4)回到上级目录
cd ..
(5)链接,生成可执行文件:staticmain
g++ main.cpp -Iinclude -Lsrc -o staticmain
2.GDB调试器
GDB是一个用来调试C/C++程序的功能强大的调试器,是Linux系统开发C/C++最常用的调试器
可以使用GDB来跟踪程序中的错误,从而减少程序员的工作量。
Linux开发C/C++一定要熟悉GDB。
VScode是通过调用GDB调试器来实现C/C++的调试工作的。
(1)gdb[exefilename],进入gdb调试程序,其中exefilename为要调试的可执行文件
$(gdb)help(h)#查看命令帮助、
(2)(gdb)run(r)重新开始运行文件 run-text:加载文本文件,run-bin:加载二进制文件
(3)$(gdb)next(n)单步调试(逐过程,函数直接执行)
(4)$(gdb)step(s)单步调试(逐语句,跳入自定义函数内部执行)
(5)$(gdb)break+num(b)在第num行设置断点
(6)$(gdb)enable breakpoints启用断点
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)