2011-08-10 12 views
5

Esta pregunta es solo yak-shaving para tratar de solucionar problemas another problem.Cabal: configuración cabal falla

Así, en un intento de diagnosticar otro problema mío, me aconsejaron intentar:

cabal unpack base 
cd base-4.3.1.0 
cabal haddock 

para ver lo que hicieron.

Solo cuando lo hice cabal unpack base, desempaquetó base-3.0.3.2. Entonces cabal haddock se quejó de que necesitaba ejecutar cabal configure primero y luego falló (perdí el error exacto, lamentablemente).

Así que decidí instalar base-4.3.1.0, solo para poder recrear las instrucciones exactamente.
Incluso después de la instalación, cabal unpack base desempaqueta base-3.0.3.2, aunque cabal unpack base-4.3.1.0 desempaqueta base-4.3.1.0.

Ahora estoy no puede obtener ya sea para configurar:

% cabal unpack base 
Unpacking to base-3.0.3.2/ 
% cd base-3.0.3.2 
% cabal haddock 
cabal: Run the 'configure' command first. 
% cabal configure 
Resolving dependencies... 
Configuring base-3.0.3.2... 
cabal: At least the following dependencies are missing: 
base >=4.0 && <4.3, syb ==0.1.* 
% cd .. 
% 
% cabal unpack base-4.3.1.0 
Unpacking to base-4.3.1.0/ 
% cd base-4.3.1.0 
% cabal haddock 
cabal: Run the 'configure' command first. 
% cabal configure 
Resolving dependencies... 
Configuring base-4.3.1.0... 
configure: WARNING: unrecognized options: --with-compiler, --with-gcc 
checking for gcc... gcc 
checking whether the C compiler works... yes 
... 
checking for library containing iconv... -liconv 
checking for library containing locale_charset... none required 
configure: creating ./config.status 
config.status: error: cannot find input file: `base.buildinfo.in' 
% cd .. 

Además, no puedo volver a la base-3.0.3.2, ya que depende de tener versión de la base> = 4.0 4.3 < (WTF?), Y no puedo instalar base-4.2.0.2 b/c falla b/c no puede encontrar base.buildinfo.in.

% cabal --version 
cabal-install version 0.10.2 
using version 1.10.1.0 of the Cabal library 
% cabal info base 
* base    (library) 
    Synopsis:  Basic libraries (backwards-compatibility version) 
    Versions available: 3.0.3.1, 3.0.3.2, (4.0.0.0), (4.1.0.0), (4.2.0.0), 
         (4.2.0.1), (4.2.0.2), (4.3.0.0), (4.3.1.0) 
    Versions installed: (4.3.1.0) 
    Homepage:  [ Not specified ] 
    Bug reports: http://hackage.haskell.org/trac/ghc/newticket?component=libraries/base 
    Description: This is a backwards-compatible version of the base package. 
        It depends on a later version of base, and was probably 
        supplied with your compiler when it was installed. 
    License:  BSD3 
    Maintainer: [email protected] 
    Source repo: http://darcs.haskell.org/packages/base3-compat 
    Dependencies: base >=4.0 && <4.3, syb ==0.1.* 
    Documentation: /usr/local/share/doc/ghc/html/libraries/base-4.3.1.0 
    Cached:  Yes 
    Modules: 
    ... 
% 

¿Qué estoy haciendo mal y cómo puedo solucionarlo?

Respuesta

5

Nadie tiene la intención de auto compilar base. Está vinculado a una instalación de ghc en particular, por lo que no podría usar ningún otro paquete base si lo construyó. No me sorprende que el paquete base no se construya a partir de pirateo; lo más probable es que nadie intente nunca construirlo.

De todos modos, probaría checking out the ghc source. El archivo base.buildinfo.in estará en el base package repo. Puede copiar el archivo del repositorio a su distribución no empaquetada, pero probablemente sea mejor crearlo a partir de la fuente revisada.

Solo asegúrese de instalar solo los documentos y no la biblioteca.