[Hackage] #564: Cabal doesn't use LD options when testing linking

Hackage trac at galois.com
Wed Jun 24 12:00:48 EDT 2009


#564: Cabal doesn't use LD options when testing linking
----------------------------+-----------------------------------------------
  Reporter:  igloo          |        Owner:         
      Type:  defect         |       Status:  new    
  Priority:  high           |    Milestone:         
 Component:  Cabal library  |      Version:  1.6.0.1
  Severity:  normal         |     Keywords:         
Difficulty:  unknown        |   Ghcversion:         
  Platform:                 |  
----------------------------+-----------------------------------------------
 When checking to see if the C libraries are available, Cabal isn't using
 the LD options that it has been given.

 This example is using GHC's `ghc-cabal` program, but that's just a thin
 wrapper around the Cabal library. It looks like it's in `checkForeignDeps`
 in `Distribution.Simple.Configure` that it goes wrong. Note that `--ld-
 options="-L/usr/local/lib "` is passed, but not used in the `gcc` commands
 that do the linking.
 {{{
 $ "inplace/bin/ghc-cabal" configure --with-ghc="/home/kili/src/ghc/ghc-
 head/inplace/bin/dummy-ghc" --with-ghc-pkg="/home/kili/src/ghc/ghc-
 head/inplace/bin/ghc-pkg" --with-gcc="gcc" --configure-option=--with-
 cc="gcc" --with-hscolour="/usr/local/bin/HsColour" --configure-
 option=CFLAGS="-O -I/usr/local/include  " --configure-
 option=LDFLAGS="-L/usr/local/lib  " --gcc-options="-O -I/usr/local/include
 " --ld-options="-L/usr/local/lib " -v3  -- dist-install libraries/integer-
 gmp
 [boring stuff skipped]
 ("sh",["configure","--with-compiler=ghc","--with-cc=gcc","CFLAGS=-O
 -I/usr/local/include  ","LDFLAGS=-L/usr/local/lib  "])
 checking build system type... x86_64-unknown-openbsd4.5
 checking host system type... x86_64-unknown-openbsd4.5
 checking target system type... x86_64-unknown-openbsd4.5
 checking for gcc... gcc
 checking for C compiler default output file name... a.out
 checking whether the C compiler works... yes
 checking whether we are cross compiling... no
 checking for suffix of executables...
 checking for suffix of object files... o
 checking whether we are using the GNU C compiler... yes
 checking whether gcc accepts -g... yes
 checking for gcc option to accept ANSI C... none needed
 checking for __gmpz_fdiv_qr in -lgmp... yes
 configure: creating ./config.status
 config.status: creating integer-gmp.buildinfo
 config.status: creating gmp/config.mk
 Reading parameters from ./integer-gmp.buildinfo
 ("/usr/bin/gcc",["-O","-I/usr/local/include","/tmp/2499.c","-o","/tmp/2499","-O","-I/usr/local/include","-D__GLASGOW_HASKELL__=611","-I.","-I/home/kili/src/ghc
 /ghc-head/includes","-I/home/kili/src/ghc/ghc-
 head/libffi/build/include","-lgmp"])
 /usr/bin/gcc returned ExitFailure 1 with error message:
 /usr/bin/ld: cannot find -lgmp
 collect2: ld returned 1 exit status
 ("/usr/bin/gcc",["-O","-I/usr/local/include","/tmp/2499.c","-o","/tmp/2499","-lgmp"])
 /usr/bin/gcc returned ExitFailure 1 with error message:
 /usr/bin/ld: cannot find -lgmp
 collect2: ld returned 1 exit status
 ("/usr/bin/gcc",["-O","-I/usr/local/include","/tmp/2499.c","-o","/tmp/2499","-lgmp"])
 /usr/bin/gcc returned ExitFailure 1 with error message:
 /usr/bin/ld: cannot find -lgmp
 collect2: ld returned 1 exit status
 ("/usr/bin/gcc",["-O","-I/usr/local/include","/tmp/2499.c","-o","/tmp/2499","-c","-O","-I/usr/local/include","-D__GLASGOW_HASKELL__=611","-I.","-I/home/kili/src/ghc
 /ghc-head/includes","-I/home/kili/src/ghc/ghc-head/libffi/build/include"])
 ghc-cabal: Missing dependency on a foreign library:
 * Missing C library: gmp
 This problem can usually be solved by installing the system package that
 provides this library (you may need the "-dev" version). If the library is
 already installed but in a non-standard location then you can use the
 flags
 --extra-include-dirs= and --extra-lib-dirs= to specify where it is.
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/hackage/ticket/564>
Hackage <http://haskell.org/cabal/>
Hackage: Cabal and related projects


More information about the cabal-devel mailing list