SlackBuilds Repository

13.1 > Libraries > electric-fence (2.1.16)

Electric Fence is a debugger that uses virtual memory hardware to detect
illegal memory accesses. It can detect two common programming bugs:
software that overruns or underruns the boundaries of a malloc() memory
allocation, and software that touches a memory allocation that has been
released by free().

Unlike other malloc() debuggers, Electric Fence will detect read accesses
as well as writes, and it will stop and pinpoint the exact instruction
that causes an error. It is not as thorough as Purify, however.

In order to debug a program it needs to be linked with Electric Fence's
library or dynamic linking needs to be used; README.Debian explains that
in detail.

In addition to the static library (libefence.a), this package also
contains a shared library of electric fence (libefence.so). Thus, you
don't need to recompile your programs any more, all you need to do is:

LD_PRELOAD=libefence.so ./your-buggy-program

and libefence's malloc will be used.

If you're using c++, and you and want to statically link your c++
programs, you shouldn't use g++ to link libefence.a, but rather:
gcc -o myprog myprog.o -lstdc++ -lg++ -lefence
(if you use g++, the order is different, and efence's malloc doesn't
get used)

Be sure to read the `libefence` manpage which describes how to set
various environment variables which alter lebefence's behavior

Maintained by: Sean Donner
Approved by: Niels Horn
Keywords: debugging,programming,malloc,C,C++

Homepage:
http://packages.debian.org/sid/electric-fence

Source Downloads:
electric-fence_2.1.16.tar.gz (9b0055bb54604fb77712d2096442ad53)

Download SlackBuild:
electric-fence.tar.gz
electric-fence.tar.gz.asc (FAQ)

(the SlackBuild does not include the source)

See our HOWTO for instructions on how to use the contents of this repository.

Access to the repository is available via:
ftp git cgit http rsync

[  Exec: 0.0277 sec  |  Load: 0.06 0.06 0.05  ]

© 2006-2014 SlackBuilds.org Project. All rights reserved.
Slackware® is a registered trademark of Patrick Volkerding
Linux® is a registered trademark of Linus Torvalds
Web Design by WebSight Designs |  Managed Hosting by OnyxLight Communications