On Tue, 11 Dec 2012 16:48:59 +0200
Michael Wood <[email protected]> wrote:

> Hi
> 
> On 11 December 2012 16:16, Juan Jose Garcia-Ripoll
> <[email protected]> wrote:
> > On Mon, Dec 10, 2012 at 10:47 PM, Christoph Egger <[email protected]>
> > wrote:
> >>
> >>   I'm seeing segfaults when trying to build ecl on x86 linux [0] (Debian
> >> unstable) not doing anything fancy with the source [1]. Any ideas?
> >
> >
> > A bit more information would be useful, even if by private email (no need to
> > post logs here).
> 
> He posted a link to the logs.  It ends like this:
> 
> head -8 config.log | tail -6 >> build-stamp
> if [ -f CROSS-COMPILER ]; then \
>       ./CROSS-COMPILER compile; \
> else \
>       ECLDIR=`pwd`/ ./ecl_min compile; \
> fi
> ;*** Lisp core booted ****
> ECL (Embeddable Common Lisp)
> 
> ;;;
> ;;; Welcome to bare.lsp. Let's bring this instance up!
> ;;;
> ;;;
> ;;; About to load lsp/load.lsp
> ;;;
> ;;; Loading src:lsp;export.lsp
> ;;; Loading src:lsp;defmacro.lsp
> ;;; Loading src:lsp;helpfile.lsp
> ;;; Loading src:lsp;evalmacros.lsp
> ;;; Loading src:lsp;cmuutil.lsp
> /bin/bash: line 4:   801 Segmentation fault      ECLDIR=`pwd`/ ./ecl_min 
> compile
> make[2]: *** [bin/ecl] Error 139
> ;;; Loading src:lsp;setf.lspmake[2]: Leaving directory
> `/build/buildd-ecl_12.12.1-1-amd64-zk7Coi/ecl-12.12.1/build'
> make[1]: *** [all] Error 2
> make[1]: Leaving directory
> `/build/buildd-ecl_12.12.1-1-amd64-zk7Coi/ecl-12.12.1'
> make: *** [build-arch-stamp] Error 2
> dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2
> 
> Perhaps running that last bit under valgrind or gdb would help?

I second this; of course the build should ideally be made using the -g
debug option.

Another suggestion is to build using a flag which generate an error
rather than a warning for implicit function declarations (which is more
prone to segfaults on amd64 because the default implicit type in C
remains "int", 32-bit, but a pointer now requires 64-bit).
The source of such a bug is usually simply a missing function prototype
or headerfile include.  With GCC, building with
-Werror=implicit-function-declaration in CFLAGS should help to detect
this.

However, if the issue is in boehm-gc, gmp, libffi and the ones supplied
with ECL are not used, building ECL alone with this flag is only of
limited utility (same with -g for debug symbols).
-- 
Matt

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Ecls-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ecls-list

Reply via email to