From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mark H Weaver Newsgroups: gmane.lisp.guile.bugs Subject: Re: build errors: 9172 Broken pipe and 9173 Segmentation fault Date: Mon, 18 Apr 2011 19:45:03 -0400 Message-ID: <8739lf3z0g.fsf@netris.org> References: <87aagl2swp.fsf@ossau.uklinux.net> <87mxjp4ncv.fsf@netris.org> <8739lf8dly.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: dough.gmane.org 1303170340 14709 80.91.229.12 (18 Apr 2011 23:45:40 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 18 Apr 2011 23:45:40 +0000 (UTC) Cc: bug-guile@gnu.org To: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Tue Apr 19 01:45:35 2011 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QBy8J-0006Td-D6 for guile-bugs@m.gmane.org; Tue, 19 Apr 2011 01:45:31 +0200 Original-Received: from localhost ([::1]:39055 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QBy8I-0004Lk-Oc for guile-bugs@m.gmane.org; Mon, 18 Apr 2011 19:45:30 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:37539) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QBy8G-0004LU-57 for bug-guile@gnu.org; Mon, 18 Apr 2011 19:45:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QBy8F-0006iS-BE for bug-guile@gnu.org; Mon, 18 Apr 2011 19:45:28 -0400 Original-Received: from world.peace.net ([96.39.62.75]:52718) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QBy8E-0006hn-92; Mon, 18 Apr 2011 19:45:26 -0400 Original-Received: from ip68-9-118-38.ri.ri.cox.net ([68.9.118.38] helo=freedomincluded) by world.peace.net with esmtpa (Exim 4.69) (envelope-from ) id 1QBy7y-00085z-K1; Mon, 18 Apr 2011 19:45:10 -0400 Original-Received: from mhw by freedomincluded with local (Exim 4.69) (envelope-from ) id 1QBy7r-00049m-GV; Mon, 18 Apr 2011 19:45:03 -0400 In-Reply-To: <8739lf8dly.fsf@gnu.org> ("Ludovic =?utf-8?Q?Court=C3=A8s=22'?= =?utf-8?Q?s?= message of "Mon, 18 Apr 2011 23:16:09 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 96.39.62.75 X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:5505 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable ludo@gnu.org (Ludovic Court=C3=A8s) writes: >> Douglas and I did some investigation over this over IRC, and discovered >> that this problem is not within Guile. On his platform (uClibc on >> PowerPC, using GCC 4.6.0 and libunistring-0.9.3) u32_conv_from_encoding >> does not work correctly, as demonstrated by the attached minimal C >> program, which is not linked with Guile. > > Great. Did you report it on bug-libunistring? Further investigation revealed that his libunistring was built with HAVE_ICONV undefined. Apparently it is possible to build and install libunistring without iconv, in which case most (all?) attempts to convert between encodings will fail. Therefore, it seems that there is no bug here at all. After Douglas rebuilt libunistring, his guile-2.0 build proceeded further than ever before: into byte-compiling *.scm files at least, and possibly all the way to completion, I'm not sure. Ideally, guile's configure script should check that libunistring is able to convert between encodings, instead of failing with an obscure error far into the build. I've never worked with autoconf, so I'm uncertain of how best to add this check. If you'd like to add it, the attached C program would be a suitable test program. It will return a non-zero exit status if libunistring conversion fails, which most likely indicates that libunistring was built without iconv. In this case I think the build should be aborted. Thanks, Mark --=-=-= Content-Type: text/x-csrc Content-Disposition: inline; filename=libunistring-iconv-test.c Content-Description: libunistring iconv test #include #include int main (int argc, char *argv[]) { size_t result_size; return (NULL == u32_conv_from_encoding ("ASCII", iconveh_question_mark, "a", 1, NULL, NULL, &result_size)); } --=-=-=--