0

If this is off-topic, please suggest where I might ask this question.

I'm recompiling a library on Cygwin using autotools. I last built it four years ago, and at that time everything worked fine.

Now I have a new computer (actually, Win 7 on Paralles on OS X) and a fresh installation of Cygwin. Autoreconf seems to work, but the configure script fails. Below are some snippets from the log file. Some time spent with Google hasn't shed any light on this. What is happening here?


hostname = gpajer-VBoxPC
uname -m = x86_64
uname -r = 2.8.0(0.309/5/3)
uname -s = CYGWIN_NT-6.1
uname -v = 2017-04-01 20:47

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

and

configure:2506: checking build system type
configure:2520: result: x86_64-unknown-cygwin
configure:2540: checking host system type
configure:2553: result: x86_64-unknown-cygwin
configure:2615: error: Canonical host info  x86_64 unknown cygwin
9
  • have you forced a autoreconf -ifv ?
    – matzeri
    Commented May 31, 2017 at 17:16
  • Good comment, but yes I have, several times.
    – garyp
    Commented May 31, 2017 at 18:08
  • without seeing what is in configure before row 2615, difficult to say. I bet in the past you built on 32bit and the configure is fooled by the x86_64
    – matzeri
    Commented May 31, 2017 at 20:52
  • Indeed, that is correct. I'm slogging through the code to see why this might be the issue, but can you suggest where to look, or a fix? Is it possible/likely that there is something in configure.ac that is defining a 32 bit system? I'm quite an autotools novice.
    – garyp
    Commented Jun 1, 2017 at 1:19
  • Is the code available somewhere ?
    – matzeri
    Commented Jun 1, 2017 at 5:01

1 Answer 1

0

Looking at the code of configure.ac

     case "$host_os" in
            *darwin*)
                host_is_mac=yes
                AC_DEFINE([ML_OS_MACOSX], [], [Mac OS X])
                LFLAGS="${LFLAGS} -framework Accelerate"
                CXXFLAGS="-falign-loops=16 ${CXXFLAGS}"
            ;;
            *linux*)
                AC_DEFINE([ML_OS_LINUX], [], [Linux OS])
            ;;
            cygwin)
                AC_DEFINE([ML_OS_LINUX], [], [Linux OS])
                AC_DEFINE([ML_OS_CYGWIN], [], [Cygwin OS])
                AC_DEFINE([ML_OS_UNIX], [], [Unix OS])
        ;;
            *)
            ;;

esac

AC_MSG_ERROR([Canonical host info  $host_cpu $host_vendor $host_os])

I would expect to see additional asterisks

  *cygwin*)

as the two cases are, usually :

i686-pc-cygwin
x86_64-unknown-cygwin
2
  • I thought of that, too, and had tried it earlier today. Same result. Unless I didn't do it properly. But that ERROR macro will stop processing unconditionally, won't it? See my recent comment to my question. (forgot to address that to you)
    – garyp
    Commented Jun 1, 2017 at 16:27
  • Remember after editing configure.ac you need to regenerate configure.
    – plugwash
    Commented Jun 1, 2017 at 17:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .