[GHC] #7979: ./configure script does not properly detect missing header files

GHC ghc-devs at haskell.org
Wed Jun 12 08:23:35 CEST 2013


#7979: ./configure script does not properly detect missing header files
-----------------------------+----------------------------------------------
Reporter:  jstolarek         |          Owner:                  
    Type:  bug               |         Status:  new             
Priority:  normal            |      Component:  Build System    
 Version:  7.6.3             |       Keywords:                  
      Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
 Failure:  None/Unknown      |      Blockedby:                  
Blocking:                    |        Related:                  
-----------------------------+----------------------------------------------
 I was trying to compile GHC on a fresh installation of Debian Wheezy and I
 got this compilation error:

 {{{
 CROSS_COMPILE="" "inplace/bin/ghc-cabal"
 configure --with-ghc="/dane/download/ghc-7.6.3/inplace/bin/ghc-stage1"
 --with-ghc-pkg="[9/1856]
 wnload/ghc-7.6.3/inplace/bin/ghc-pkg"  --enable-library-profiling
 --enable-shared --enable-library-for-ghci --configure-option=CFLAGS="
 -fno-stack-protector   " --configure-option=LDFLAGS=" -Wl,--hash-size=31
 -Wl,--reduce-memory-overheads  " --configure-option=CPPFLAGS="
   " --with-gcc="/usr/bin/gcc" --configure-option=--with-cc="/usr/bin/gcc"
 --with-ar="/usr/bin/ar" --with-ranlib="true" --with-alex="/usr
 /bin/alex" --with-happy="/usr/bin/happy" -- dist-install
 libraries/terminfo
 Configuring terminfo-0.3.2.4...
 configure: WARNING: unrecognized options: --with-compiler, --with-gcc
 checking for gcc... /usr/bin/gcc
 checking whether the C compiler works... yes
 checking for C compiler default output file name... a.out
 checking for suffix of executables...
 checking whether we are cross compiling... no
 checking for suffix of object files... o
 checking whether we are using the GNU C compiler... yes
 checking whether /usr/bin/gcc accepts -g... yes
 checking for /usr/bin/gcc option to accept ISO C89... none needed
 checking how to run the C preprocessor... /usr/bin/gcc -E
 checking for grep that handles long lines and -e... /bin/grep
 checking for egrep... /bin/grep -E
 checking for ANSI C header files... yes
 checking for sys/types.h... yes
 checking for sys/stat.h... yes
 checking for stdlib.h... yes
 checking for string.h... yes
 checking for memory.h... yes
 checking for strings.h... yes
 checking for inttypes.h... yes
 checking for stdint.h... yes
 checking for unistd.h... yes
 checking ncurses.h usability... no
 checking ncurses.h presence... no
 checking for ncurses.h... no
 checking curses.h usability... no
 checking curses.h presence... no
 checking for curses.h... no
 configure: error: in `/dane/download/ghc-7.6.3/libraries/terminfo':
 configure: error: curses headers could not be found, so this package
 cannot be built
 See `config.log' for more details
 make[1]: *** [libraries/terminfo/dist-install/package-data.mk] Error 1
 make: *** [all] Error 2
 }}}

 Which means that `./configure` did not detect that ncurses header files
 are missing from the system. I think that in this situation `./configure`
 should fail and inform the user that required header files are missing.

 Also, I noticed that when Alex and Happy are missing from the system then
 `./configure` will also not complain. I admit I didn't try to build with
 these two binaries missing, but I suspect that building would fail. If so,
 then `./configure` script should also fail in this situation.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7979>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the ghc-tickets mailing list