bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Error in libfetish.a


From: Bob Proulx
Subject: Re: Error in libfetish.a
Date: Fri, 30 Jan 2004 22:35:38 -0700
User-agent: Mutt/1.3.28i

John D. Ballentine III wrote:
> OK, I misunderstood the install instructions.  From the INSTALL file:
> "1. `cd' to the directory containing the package's source code and type
>      `./configure' to configure the package for your system. "

Those are very generic installation instructions.  Some projects have
one single directory.  Some projects break things up into logical
subdirectories.  In this case source directory is the opposite of
executable installation directory.

> I thought it meant I should go to ...coreutils-5.0/src and configure and
> then make from there, and I was puzzled as to why I had to use
> "../configure"...  

You can actually configure and build in a different directory than the
source directory.

  tar xzvf coreutils-X.Y.tar.gz
  mkdir coreutils-debug
  cd coreutils-special
  ../coreutils-X.Y/configure CFLAGS=-special-options
  make
  make check
  
This allows you to do things like keep the source on a shared NFS
mount and build different binaries for different architectures in
different directories.  You can have different builds with different
options.  And other things like that.

When you build using ../configure that is the mode you were running
in.  It should have produced all of the directories in the directory
you were in.  That happened to be the ./src directory at the time.

> OK, now I am getting the following error when I do the make from the
> "coreutils-5.0" directory:

I am worried that you did not clean things up enough after the little
snag with the ../configure.  Did you remove everything and start
clean?  Or did you try to recover by compiling in the top level
directory?

> # make

Seeing that '#' there makes me wonder.  You are not compiling this as
'root' are you?  (shudder)  Of course coreutils is quite well
behaved.  But in general one should avoid building random software and
running random scripts as root.  You should do all of that as a normal
user.

> No suffix list.

That error message is from the native HP-UX /usr/bin/make.  (Just
pointing that out so that everyone knows which make program is being
run.)  Which should work with the coreutils Makefiles.  But I fear
things may still be messed up from before.  This may not really be
necessary.  But since you are having problems I would go through the
process to make sure you have everything set.  Please confirm that you
have cleaned everything up and this is from a clean build in that
directory.

  rm -rf coreutils-5.0

  tar xzvf coreutils-5.0.tar.gz
  cd coreutils-5.0
  ./configure
  make
  make check

>         make  all-recursive
> No suffix list.
> Making all in lib
>         make  all-am
>         source='human.c' object='human.o' libtool=no \
>         depfile='.deps/human.Po' tmpdepfile='.deps/human.TPo' \
>         depmode=gcc /bin/sh ../config/depcomp \
>         gcc -DLIBDIR=\"/usr/local/lib\" -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. 
> -g -O2 -c `test -f 'human.c' || echo './'`human.c
> human.c: In function `adjust_value':
> human.c:111: parse error before `l'
> human.c:114: `u' undeclared (first use this function)
> human.c:114: (Each undeclared identifier is reported only once
> human.c:114: for each function it appears in.)
> human.c: At top level:
> human.c:117: parse error before `return'
> *** Error exit code 1

That just looks pretty strange.  It would appear that files were
corrupted.

If the first problem with make persists then I strongly recommend
installing and using the GNU make program instead of the native make
program.  The native HP-UX make has several nasty bugs.  One is a
short line length limit which can be overflowed by Makefiles with a
lot of objects.  IIRC it is 1024 characters per line, but I don't
remember well.  Another is that its backslash escape of newlines is
strange and has caused me trouble.  (It does an scanf("%s",buf); after
seeing one.  Which can eat up many blank lines beyond where it should
stop!)  Neither of these _should_ be a problem with the automake
generated Makefiles.  But it probably has not been tested as well as
when using GNU make either.  If you are already installing software
then installing one more program shouldn't be a problem.  And it will
really help you in the future as you compile and install more
software.  GNU make is available in the directory next to coreutils.

Of course we really want you to be able to compile your own
executables from source.  But since I do happen to have HP-UX 10.20
machines myself I would be happy to make available to you a
precompiled 'tail' for that platform while you work through your
compilation problems.

Bob




reply via email to

[Prev in Thread] Current Thread [Next in Thread]