This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: autoconf issues [often when upgrading from 2.13->2.53a]


>  
> > Looking at the log of the configure session that you included, it's
> > apparent that your version of 'expr' is returning the wrong result.
> > Here's the command that the configure script runs:
> > 
> > expr xposixmutexes :
> >
> '.*[^-_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ012
> 3456789]'
> > && echo hello
> > 
> > (I changed the 'echo' portion for simplicity.)
> > 
> > This invocation of 'expr' should return 0 (zero) and the second
> > half of
> > the '&&' expression should not be evaluated, but on your system it
> > is.
> 
> Hmm, I see...
>  
> > You might try running the first half of the '&&' expression without
> > the
> > second half to see what position in the 'xposixmutexes' string
> > 'expr'
> > thinks it is finding an invalid character.
> 
> Curious, this is the result on the Win98SE machine:
> $ expr xposixmutexes :
> '.*[^-_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ012
> 3456789]'
> 
> 0
> 
> I take it this isn't what should have happened if something was
> wrong?  However, I immediately try the configure script and I get
> that error...
>

My guess is that when the 'configure' script is running, it is finding
a different version of 'expr'.  Is it possible that you have more than
one version installed on your machine?

At your shell prompt, enter the command:

   $ type expr

Next, edit your 'configure' script and find the section that evaluates
the '--enable' option, i.e., 

  -enable-* | --enable-*)
    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
    # Reject names that are not valid shell variable names.
    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
   { (exit 1); exit 1; }; }
    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
    case $ac_option in
      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
      *) ac_optarg=yes ;;
    esac
    eval "enable_$ac_feature='$ac_optarg'" ;;

Insert the line 'type expr' before the line:

>    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&

Save the change and run the 'configure' script again.  It should fail
again, of course, but it should also tell you where it thinks it is
finding the 'expr' program.

By the way, your instructions for generating 'configure' using your
'db-3.1.17-1.sh' script did not mention that you had overridden the
settings of $CC and $CXX to use 'gcc-2' and 'g++-2'.

---

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]