From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9297 invoked by alias); 28 Feb 2002 22:12:45 -0000 Mailing-List: contact sourcenav-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: sourcenav-owner@sources.redhat.com Received: (qmail 9234 invoked from network); 28 Feb 2002 22:12:42 -0000 Received: from unknown (HELO shell4.bayarea.net) (209.128.82.1) by sources.redhat.com with SMTP; 28 Feb 2002 22:12:42 -0000 Received: from modrick (209-128-79-218.BAYAREA.NET [209.128.79.218]) by shell4.bayarea.net (8.9.3/8.9.3) with SMTP id OAA17627 for ; Thu, 28 Feb 2002 14:12:42 -0800 (envelope-from supermo@bayarea.net) Date: Thu, 28 Feb 2002 15:55:00 -0000 From: Mo DeJong To: sourcenav Subject: Re: Trouble building grep portion of Source Navigator Message-Id: <20020228141145.663f40c6.supermo@bayarea.net> In-Reply-To: <26F9F6EAB586D411850700B0D049E6E4014D2E7B@shasta.pdx.steptech.com> References: <26F9F6EAB586D411850700B0D049E6E4014D2E7B@shasta.pdx.steptech.com> Organization: House of Mirth X-Mailer: Sylpheed version 0.4.99cvs6 (GTK+ 1.2.7; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-SW-Source: 2002-q1/txt/msg00140.txt.bz2 On Thu, 28 Feb 2002 08:54:34 -0800 Bruce Edson wrote: > First problem encountered: > > It appeared that a portion of grep compiles. It then runs into a problem > with a missing libintl.h file. When I look into the include directory > ../intl, sure enough the file is there, but, it is a Windows shortcut file > to libgettext.h back in the source tree. I wasn't aware that Make would > work with shortcut files. If I replace the shortcut with a real version of > the file (not libgettext.h), I get past this problem. Why is this shortcut > file being created for me? Also, if I use '--with-included-gettext' for > configure, the problem still exists, even though this would suggest > eliminating the need for libintl.h. Any ideas? Groan! I looked in grep/configure.in and found this: dnl FIXME: this overcomes a flaw in using non-Cygwin tools with symlinks. if test x$ac_cv_prog_CC = xcl ; then AC_MSG_RESULT([copying libgettext.h to intl/libintl.h]) if test -f $nls_cv_header_intl ; then rm $nls_cv_header_intl fi cp $srcdir/$nls_cv_header_libgt $nls_cv_header_intl fi Looks like you need to use export CC=cl to get around that. > Second problem encountered: > > After copying a real libintl.h file into ../grep/intl, the make compiles > the c files okay and then tries to work with a file called libintl.a. I get > the following output. Could anyone give me a clue as to what is going > wrong? Is there an incompatability with VC++ compiler/linker? I tried > adding '--with-included-gettext' to the configure and starting over with a > clean build directory. No change. > > cl.exe -Z7 -Od -o grep.exe grep.obj dfa.obj kwset.obj obstack.obj > getopt.obj > getopt1.obj search.obj btowc.obj regex.obj ../intl/libintl.a > Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for > 80x86 > Copyright (C) Microsoft Corp 1984-1998. All rights reserved. > > Command line warning D4024 : unrecognized source file type > '../intl/libintl.a', This is just a goofy hack in the old grep build system. It should not cause problems linking. > ../intl/libintl.a > regex.obj : error LNK2001: unresolved external symbol _alloca > libintl.a(dcgettext.obj) : error LNK2001: unresolved external symbol > _alloca > libintl.a(localealias.obj) : error LNK2001: unresolved external symbol > _alloca > grep.exe : fatal error LNK1120: 1 unresolved externals > make[3]: *** [grep.exe] Error 2 > make[3]: Leaving directory `/cygdrive/c/snkeck/snbuild/grep/src' This is also caused by the CC=cl thing. >From configure.in: if test x$ac_cv_prog_CC = xcl ; then AC_DEFINE(alloca, _alloca) fi cheers Mo