Mailing List Archive

Re: my experience tonight
On Thu, 7 Sep 1995, dk smith wrote:

> Here are notes I took during the last couple of hours...
>
> bison variable not set though bin var was set to '/opt/gnu/bin'

Yes. bison is not used, but Configure searches for a generic long list
of programs that might be used. I suppose I could trim them out of
Configure, but it never seemed worth the effort.

> I get the same results (final config.sh file and std output) when I invoke
> the script with any of the following:
>
> ./Configure -de
>
> ./Configure -des -Dcc=gcc -Dlibpth="/usr/lib /usr/ccs/lib /opt/sww/lib
> /opt/gnu/lib /opt/gnu/lib/gcc-lib/sparc-sun-solaris2.4/2.7.0"
> -Dlibc=/usr/lib/libc.so
>
> ./Configure -Dcc=gcc -Dlibpth="/usr/lib /usr/ccs/lib /opt/sww/lib
> /opt/gnu/lib /opt/gnu/lib/gcc-lib/sparc-sun-solaris2.4/2.7.0"
> -Dlibc=/usr/lib/libc.so -Dprefix=/opt/sww -des

Huh?
./Configure -de
and
./Configure -de -Dcc=gcc
will use different compilers. The first will use cc. The second will
use gcc. You must be re-using a config.sh. Don't do that. Quoting
from README:

If you change compilers or make other significant changes, you should
probably _not_ re-use your old config.sh. Simply remove it or
rename it, e.g. mv config.sh config.sh.old. Then rerun Configure
with the options you want to use.

Note that autoconf packages that use config.cache have *exactly* the
same problem.

> Why does this have to be so difficult?

Why does what have to be so difficult? I'm unclear what you're trying
to do that you find difficult.
rm config.sh
sh Configure -de -Dcc=gcc -Dprefix=/opt/sw
works just fine, and is documented in README.

I don't mean to be dense or unhelpful, and I do understand that
Configure asks a lot of questions, but I just don't understand what
specific problems you're having and how we can help you solve them.

If you have specific suggestions for README or patches for Configure,
I'll be happy to try to include them.

Andy Dougherty doughera@lafcol.lafayette.edu
Re: my experience tonight [ In reply to ]
On Thu, 07 Sep 1995 11:00:02 EDT, Andy Dougherty wrote:
>On Thu, 7 Sep 1995, dk smith wrote:
>
>> Why does this have to be so difficult?
>
>Why does what have to be so difficult? I'm unclear what you're trying
>to do that you find difficult.
> rm config.sh
> sh Configure -de -Dcc=gcc -Dprefix=/opt/sw
>works just fine, and is documented in README.
>
>I don't mean to be dense or unhelpful, and I do understand that
>Configure asks a lot of questions, but I just don't understand what
>specific problems you're having and how we can help you solve them.
>
>If you have specific suggestions for README or patches for Configure,
>I'll be happy to try to include them.
>
> Andy Dougherty doughera@lafcol.lafayette.edu
>

I got some feedback from some colleagues who attempted installing perl5
recently and came to me for help. Based on this, I believe the perl
Configure process is amazingly flexible and all that, and it only needs some
reorganization and visual tidying up.

I don't really understand all the magic wrought by Configure, but here's a
summary of what I got from their moaning (for what it's worth):

* Apparently random order in which questions are asked. (This was
the most serious problem of all). People seem to prefer answering
path related questions at the very beginning. Most of them
don't even want to know the rest of the stuff configure does. I tried
telling them that they could set the paths from the command line,
for which I was asked to show the documentation so that they can
figure out which keywords to use for what paths (which is absent in
perl5.001m, of course). In another message Kenneth says this is
too hard to do, but I would tend to think that this *must* be reworked
however hard it is going to be.

* The toplevel of the distribution can be made 'cleaner' by
moving all the files that don't need to be there for possible
changes by a person installing perl. The source code can be
in ./src, miscellaneous programs used during install can be
in ./etc, binaries in ./build and so forth. This will dramatically
reduce the 'clutter' one has to see as soon as they untar the
distribution. (Having a ./build directory gives one the opportunity to
try out and preserve various builds with different configuration
switches and install whichever suits one the best. You move/delete
the build directory, and everything is redone from scratch.)

* Comments in config.sh and other user-editable files in the toplevel.

* By default, when Configure is invoked with -de, output can go to
a log file, with screen output only for status messages and exceptional
conditions.

- Sarathy.
gsar@engin.umich.edu