b2c信息网

您现在的位置是:首页 > 明日新闻 > 正文

明日新闻

linux如何调试库源码(linux代码调试)

hacker2022-09-14 22:50:34明日新闻85
本文目录一览:1、如何在Linux下调试动态链接库2、

本文目录一览:

如何在 Linux 下调试动态链接库

你需要debug版本的库文件,一个库发布往往有3种版本,一个是运行期的库,一个是开发版的,还有一个是调试版的。 以ubuntu环境下,libc为例,你可以sudo apt-get install libc-dbg来安装调试库。

VLC源代码包如何在linux下编译+调试

你是为了装软件还是为了学习?如果只是装个软件,为什么不装二进制版的呢(.deb .rpm)。自己编译挺麻烦的。

如果非想自己编译,一般都是(我没编译过VLC,编译过其他的,感觉像VLC这么大的软件应该得较长时间!):先解压下载的源码包(tar.bz),然后从终端进入解压后的源码目录,在终端输入:一 ./configure ;二 make ;三 make install ;

一,好像是为了检查当前系统参数,也可以在后面加环境变量参数(./configure [options])。如果没问题便生成makefile

二,根据makefile编译

三,编译安装。(二,可省略)

其实,不管是windows还是linux下载了软件解压后第一件事是读readme!!!!!!!!!!!(其实你应该自己看readme和install,因为别人也不知道你下的软件什么情况,这两个文件一般都会告诉你怎样安装以及软件依赖什么包!!)

再是读install ,这是基本素质。要养成自觉性,这在linux下尤为重要!

至于调试,比较麻烦,不过如果只是装软件而不改代码的情况下,不用专门调试(难道你还要用专门工具调试?) 既然说是菜鸟,又稿这么复杂的东西,并且搞这么复杂的东西又不在更专业的地方提问,百度知道一般是解决日常问题的地方!!!

不过一般情况下执行上述三步时会报错,根据它报错情况自己想办法解决,一般来说是依赖不能满足!

如何在Linux下调试PostgreSQL

 1. 安装Linux操作系统

注意把gdb、Emacs或DDD这些开发工具都安装上。如果是在虚拟机上安装,依然需要设置Linux系统的网络环境;另外需要设置文件共享,方便windows下面的postgreSQL源码能在Linux下面访问到。

2. 安装PostgreSQL

useradd postgre

(自动建立 postgre 组;设计人员为了安全考虑,PostgreSQL 不能以root 用户运行,所以必须建立对应的用户和组。)

解压到 /usr/local/src

tar xvfz postgresql-8.4.tar.gz

cd postgresql-8.4

./configure --prefix=/usr/local/pgsql --enable-debug --enable-assert --without-readline --without-zlib

make

make install

chown -R postgre.postgre /usr/local/pgsql

3. 设置Postgres环境变量(非必须)

vi ~postgre/.bash_profile

添加:

PGLIB=/usr/local/pgsql/lib

PGDATA=$HOME/data

PATH=$PATH:/usr/local/pgsql/bin

MANPATH=$MANPATH:/usr/local/pgsql/man

export PGLIB PGDATA PATH MANPATH

4. 建立数据库

以 postgres 用户登录:

su postgre

建立数据库目录:

mkdir data

启动数据库引擎:

initdb –D “数据库目录”

之后可以根据提示,通过psql进入数据库

5. 构造PostgreSQL调试环境

先 psql template1进去,然后

select pg_backend_pid();

获得id,就是gdb后面用到的数字

gdb /usr/local/pgsql/bin/postgres 997(pid的数字)

如果只使用gdb,全部是命令行界面;而Emac、DDD分别是彩色、黑白用户交互式图形界面。

6. 使用gdb进行调试

在U盘上有一待调试的C语言源程序,请问在Linux系统下应该如何进行调试操作,写出相

假定源文件名为 test.c

gcc -g test.c -o test

编译出可执行文件 test,然后

gdb test

然后用 l 看源码,用b设置断点,用r开始运行程序,用p打印变量,用n单步执行下一条语句,用s单步进入函数,用help查看所有命令,用help xxx查看xxx命令的帮助。

怎样调试GCC源码

一、Linux程序gcc编译步骤:

Gcc编译过程主要的4个阶段:

l 预处理阶段,完成宏定义和include文件展开等工作;(.i)

l 根据编译参数进行不同程度的优化,编译成汇编代码(.s.S)

l 用汇编器把汇编代码进一步生成目标代码(.o)

l 用连接器把生成的目标代码和系统或用户提供的库连接起来,生成可执行文件

格式:

l gcc -E test.c//预处理阶段

l Gcc -S test.c//编译阶段

l Gcc -c test.c//汇编阶段

l Gcc -o test test.c//链接阶段

二、Linux程序gdb调试步骤:

Gdb的功能:

l 设置断点

l 监视程序变量的值

l 程序的单步执行

l 显示、修改变量的值

l 显示、修改寄存器

l 查看程序的堆栈情况

l 远程调试

Gdb调试过程:

1、程序经过预处理后,即进入编译阶段,进入编译阶段,首先声明编译:

2、格式:gdb -o test test.c -g

3、进入编译:gdb test

4、显示需要编译调试的源程序:l(list)//list filename

5、设置断点:b(break)行号

6、查看设置的断点:info b

7、运行调试程序:run

8、跳到下一个断点:c(continue)

9、单步运行的话使用:n(next)/s(step into)跳到函数体 //区别在与:next执行函数体,而step不执行函数体

10、调试过程中查看某个变量的变化:print i (每次都要手动设置)//display i(设置一次一直尾随,直到用“undisplay 变量标号” 停止)

11、退出当前的调试使用finish 跳出函数

12、清楚断点 clear 行号

13、Delete 断点信息序号// 删除所有断点或设置的要删除的断点

14、退出调试 q

15、b num if i==20 设置断点的触发条件

16、condition num i==50 改变断点的触发条件

怎么在linux中查看库函数源代码

linux中查看库函数源代码,需要自己手动下载一个gnu libc源代码库。然后在里面查,可以使用vim建立个ctags,然后及时定位到相应的函数即可。

发表评论

评论列表

  • 舔夺秋酿(2022-09-15 01:26:17)回复取消回复

    库,一个是开发版的,还有一个是调试版的。 以ubuntu环境下,libc为例,你可以sudo apt-get install libc-dbg来安装调试库。VLC源代码包如何在linux下编译+调试你