魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 l! x. n: J5 ]# h$ w/ l
The problem that no `core' file is created on a segmentation fault; Locate errors in the source with GDB and `core' files妖城在线论坛7 h9 `3 N; B9 d1 W: }: w/ X
Linux 程序在遇到段错误(常见的是由非法访问内存引起)的时候会产生 core 文件,如果这个程序包含调试信息(编译的时候加 -g 选项),那么使用 gdb 读取这个 core 文件可以快速定位出错的源代码。原来在某软件公司实习的时候(用 RedHat Enterprise Linux)觉得这样非常方便查错,但我自己用的 Debian GNU/Linux 却默认不生成这个文件。
5 m. r! j% V& _/ W. [+ e4 L3 Rbbs.mocwww.com检查以后发现原因是 core 文件最大尺寸(用 ulimit -c 查看)是 0,把它设置成非 0 值就可以了,如:
# Y+ y6 P: m# I% ?$ p—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートulimit -c 2048(设置 core 文件最大尺寸为 2048 blocks,1block=512bytes,因此这里设置的其实是 1MiB)
" E5 s; b$ X3 P妖城在线论坛ulimit -c unlimited(不限 core 文件尺寸)
- v* e# a( l5 q3 s! }0 ^—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート附:用 gdb 根据 core dump 文件定位错误的办法。
3 N" S9 ?2 |0 F& z) m8 q! s2 |4 p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表用这个程序作一个测试:魔力私服,最新魔力宝贝私服技术交流) ^: J5 S; f# I+ N
int foo (int *p)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表 K9 e" P& k' P- L H% h- ?
{魔力私服,最新魔力宝贝私服技术交流 Y# x9 M3 w# c! f9 k1 o
return *p;—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート2 ]3 y9 |; {/ }6 B
}1 w; E; S2 F5 r1 p- K* m9 }
main()—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# s& Y6 Y1 k c0 [
{—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート4 _5 E6 T, L5 A$ p( A) p
foo (0);魔力私服,最新魔力宝贝私服技术交流. Q9 O+ _0 n* E0 O
}
' @7 m& d: a5 A3 sbbs.mocwww.comderek@dli: /tmp $ gcc -g a.c—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート& ~6 p/ N6 k3 ^2 }; \
derek@dli: /tmp $ ./a.out魔力私服,最新魔力宝贝私服技术交流0 w j I' X5 S$ M) L: E
段错误 (core dumped)
% N; V0 Y! w' |7 k& |1 c魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表derek@dli: /tmp $ gdb ./a.out -c core
7 u5 C; w2 X9 }% q! h% V魔力私服,最新魔力宝贝私服技术交流(这里略去约十行其他信息)
% `& X, a. Q+ x—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートCore was generated by `./a.out'.魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表0 s. y, Q; }$ t7 w u) d: D
Program terminated with signal 11, Segmentation fault.魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表5 t: t% `) O, ]
#0 0x0804834a in foo (p=0x0) at a.c:31 ~0 R( n. J0 @7 y
3 return *p;
6 F$ N, [6 F2 G% Y! W* V魔力私服,最新魔力宝贝私服技术交流如果再输入一条命令 bt,就可以看得清清楚楚错误是在什么时机产生的:
3 s; y; P: M. e/ _7 B, ^妖城在线论坛(gdb) bt8 q/ `( g, Q* c% A" l0 }
#0 0x0804834a in foo (p=0x0) at a.c:3bbs.mocwww.com2 Y6 i# _( `; A& ~# n
#1 0x0804836b in main () at a.c:8/ p7 r: e$ Z. [) r; c+ c
不能有比这更清楚的错误信息了!如果是在 Windows 下,就老老实实 Trace and Step 吧。妖城在线论坛( R" w' r: N6 a# f) x
—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート3 T- g$ X' H2 c0 P" b$ ?% J. B
百度知道摘的有关段错误的解释
i3 T- z9 {& ]5 }7 L" Dbbs.mocwww.com参考一下便于理解
- u1 W. D: |& \. b—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート至于出错的原因 最好贴更多的信息 上面应该还有其他错误提示才对吧魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表) b. }" a% U# D: D" A6 B; Z