From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 769A5BCAB for ; Thu, 2 Jun 2005 07:47:58 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j525lw3N014232 for ; Thu, 2 Jun 2005 07:47:58 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id HAA12330 for ; Thu, 2 Jun 2005 07:47:57 +0200 (MET DST) Received: from sark4.cc.gatech.edu (sark4.cc.gatech.edu [130.207.7.19]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j525luxi014228 for ; Thu, 2 Jun 2005 07:47:57 +0200 Received: from sark3.cc.gatech.edu (sark3.cc.gatech.edu [130.207.7.22]) by sark4.cc.gatech.edu (8.12.10/8.12.8) with ESMTP id j525lt2f023770 for ; Thu, 2 Jun 2005 01:47:56 -0400 (EDT) Received: from [192.168.1.198] (adsl-156-44-4.asm.bellsouth.net [66.156.44.4]) (authenticated bits=0) by sark3.cc.gatech.edu (8.12.10/8.12.10) with ESMTP id j525lr1v011956 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for ; Thu, 2 Jun 2005 01:47:55 -0400 (EDT) Mime-Version: 1.0 (Apple Message framework v622) Content-Transfer-Encoding: 7bit Message-Id: Content-Type: text/plain; charset=US-ASCII; format=flowed To: caml-list@inria.fr From: Frank Dellaert Subject: -linkall segmentation faults Date: Thu, 2 Jun 2005 01:47:45 -0400 X-Mailer: Apple Mail (2.622) X-Miltered: at concorde with ID 429E9D8E.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 429E9D8C.003 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; dellaert:01 dellaert:01 gatech:01 -linkall:01 ocaml:01 ocamlopt:01 -linkall:01 garbage:01 bug:01 ocaml:01 cheers:01 executables:01 executables:01 modules:01 segmentation:02 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: Hi we have a very extensive robotics/vision code-base that mixes C and Ocaml. The library is divided in about 30 different libraries that can be linked in with the main program, depending on its functionality. However, the executables that ocamlopt produces started to get too large (10MB and more) so I decided to remove the -linkall flag. However, we quickly found that (1) removing the -linkall on certain libraries immediately crashes our executables (2) even after re-instituting -linkall for those, we still experience random crashes (2 out of 5 runs) I suspect, based on examining core dumps, that it is C-externals or garbage collection problems. Two questions: a) I do believe this is a genuine bug: the linker should find out which modules to link. Can it be added to a list of bugs in Ocaml ? b) how can we work around it, and/or identify which libraries cause the problem ? Cheers Frank Dellaert Asst. professor, Georgia Tech