魔力私服,最新魔力宝贝私服技术交流% b& B& G8 _4 h0 Y
The problem that no `core' file is created on a segmentation fault; Locate errors in the source with GDB and `core' files—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート9 `' V2 {0 j* B# ?6 \+ e+ B
Linux 程序在遇到段错误(常见的是由非法访问内存引起)的时候会产生 core 文件,如果这个程序包含调试信息(编译的时候加 -g 选项),那么使用 gdb 读取这个 core 文件可以快速定位出错的源代码。原来在某软件公司实习的时候(用 RedHat Enterprise Linux)觉得这样非常方便查错,但我自己用的 Debian GNU/Linux 却默认不生成这个文件。—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート6 v- n- `6 v$ h7 s+ j6 t
检查以后发现原因是 core 文件最大尺寸(用 ulimit -c 查看)是 0,把它设置成非 0 值就可以了,如:
: _9 d3 e7 P: @8 g% J; S* |妖城在线论坛ulimit -c 2048(设置 core 文件最大尺寸为 2048 blocks,1block=512bytes,因此这里设置的其实是 1MiB)
! b4 u; K& l1 mulimit -c unlimited(不限 core 文件尺寸)" _! v ~( N: w% g: ~$ t8 }+ |
附:用 gdb 根据 core dump 文件定位错误的办法。bbs.mocwww.com7 F% ~4 O6 p/ s& M, w
用这个程序作一个测试:—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート$ C c% {" i% \+ j' s. ]/ b
int foo (int *p)
1 X% |1 [- H: `% y. j, |. |+ A( m{
, n& a! S# b* I5 A魔力私服,最新魔力宝贝私服技术交流return *p;
3 W ^! N0 D5 w$ B% u- R; W魔力私服,最新魔力宝贝私服技术交流}
( }) @' E8 T0 y& |bbs.mocwww.commain()—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, f% m) R, t; y! Z+ Y+ \
{
, C1 J' J3 {2 B3 B9 [0 C6 z, r: gbbs.mocwww.comfoo (0);
9 d+ F0 k3 I! `$ z1 Z1 X; g" i妖城在线论坛}
9 o0 B; Y q$ T* z+ ~6 @% Z) cderek@dli: /tmp $ gcc -g a.c
3 K1 [2 U8 N# \- x7 I- z5 _魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表derek@dli: /tmp $ ./a.out
, P$ i/ l- E( ?& x R) p魔力私服,最新魔力宝贝私服技术交流段错误 (core dumped)
" O. `: R( g; B魔力私服,最新魔力宝贝私服技术交流derek@dli: /tmp $ gdb ./a.out -c core
+ F) z7 J/ J8 a1 z" K' k( K(这里略去约十行其他信息)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート8 y8 Q4 ^% h: e
Core was generated by `./a.out'.—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート W( n# N, F W1 b3 U
Program terminated with signal 11, Segmentation fault.—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. O$ J5 y* ^" [
#0 0x0804834a in foo (p=0x0) at a.c:3
, W- G' |; l; l e6 O3 T6 D3 return *p;
4 W5 |; r3 C. g& O% Z4 Z妖城在线论坛如果再输入一条命令 bt,就可以看得清清楚楚错误是在什么时机产生的:
) V( t. X4 P( m& Zbbs.mocwww.com(gdb) bt—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート+ H* @1 p9 t- Y, I& K
#0 0x0804834a in foo (p=0x0) at a.c:3
4 G8 v) y0 E7 H& G5 Z#1 0x0804836b in main () at a.c:8bbs.mocwww.com3 s& z, A( o6 o8 ^" M8 }8 ^, z
不能有比这更清楚的错误信息了!如果是在 Windows 下,就老老实实 Trace and Step 吧。
2 `3 M# A% [* h2 E8 `1 ~6 c
( h. O3 @$ t$ r—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート百度知道摘的有关段错误的解释—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート q; C3 J( f/ e- M9 ^# F3 D0 p
参考一下便于理解
* P$ G+ ?# X) \5 _( X妖城在线论坛至于出错的原因 最好贴更多的信息 上面应该还有其他错误提示才对吧魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& V( x, q' n+ @& Y, q ]3 B( |