Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: Richard Jones <rich@annexia.org>
To: Alex Baretta <alex@baretta.com>
Cc: Ocaml <caml-list@inria.fr>
Subject: Re: [Caml-list] Segmentation fault at process initialization
Date: Thu, 18 Sep 2003 13:52:54 +0100	[thread overview]
Message-ID: <20030918125254.GA22780@redhat.com> (raw)
In-Reply-To: <3F69A471.9020807@baretta.com>

On Thu, Sep 18, 2003 at 02:26:25PM +0200, Alex Baretta wrote:
> When the Xcaml runtime system is linked with the -linkall option of 
> ocamlc-3.06, the xcaml executable I get crashes with a segmentation 
> fault at process initialization. If, on the other hand, I link the 
> executable without the -linkall option, it runs fine, except for the 
> fact that it lacks several library modules it should have.
> 
> The libraries I'm using are the following:
> postgres, which is know to work very well;
> cgi, which contains no C code;
> and str, num and dynlink coming straight from the ocaml distribution.
> 
> My code is definitely not a problem because it runs fine if the -linkall 
> option is suppressed. Neither is the -linkall option a problem in and of 
> itself, because I can reproduce the behaviour by issuing equivalent 
> linking commands using the cmo files as opposed the cmas.
> 
> How can I diagnose this segmentation fault? Under what circumstances 
> exactly are ocaml programs "allowed" to crash with a segmentation fault?

Obviously under no circumstances, but I've had it happen a few times.

If it's a native code version, try running it under gdb and look at
the stack trace. You can usually work out from the name which module
was being compiled. It'll be something like Module__entry for the
toplevel code, or Module__function_123 for 'function' in the module.

(You might need to supply the -g option to gcc, ie. ocamlopt -ccopt -g)

Rich.

-- 
Richard Jones. http://www.annexia.org/ http://freshmeat.net/users/rwmj
Merjis Ltd. http://www.merjis.com/ - all your business data are belong to you.
MAKE+ is a sane replacement for GNU autoconf/automake. One script compiles,
RPMs, pkgs etc. Linux, BSD, Solaris. http://www.annexia.org/freeware/makeplus/

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2003-09-18 12:52 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-09-18 12:26 Alex Baretta
2003-09-18 12:52 ` Richard Jones [this message]
2003-09-18 13:21   ` Alex Baretta
2003-09-18 13:44     ` Pierre Weis
2003-09-22 17:09       ` Alessandro Baretta
2003-09-22 18:47         ` Richard Jones
2003-09-22 20:57         ` Gerd Stolpmann
2003-09-18 16:23     ` Stefano Zacchiroli
2003-09-18 16:54     ` Damien Doligez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030918125254.GA22780@redhat.com \
    --to=rich@annexia.org \
    --cc=alex@baretta.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox