2011-12-17 11 views
18

Tengo un directorio src. En este directorio tengo el archivo Main.hs y el directorio Test. En el directorio Test tengo el módulo Test.hs. Necesito compilarlo con cabal.Cabal: dir de compilación con fuente

En mi archivo de Cabal que tengo:

Executable main 
    -- .hs or .lhs file containing the Main module. 
     Main-is: src/Main.hs 

y

-- Modules not exported by this package. 
    Other-modules: Test.Test 

Cuando hago cabal configure que está bien, pero cuando trato de cabal build me sale el siguiente error:

cabal build 
Preprocessing executables for main-0.0.1... 
cabal: can't find source for Test/Test in ., dist/build/autogen 

¿Cómo puedo construir correctamente Main.hs y algunos otros directorios con .hs archivos?

Gracias.

Respuesta

22

Si Test.Test se define en src/Test/Test.hs, es necesario

hs-source-dirs: src 

en la sección ejecutable de su archivo de Cabal. Tenga en cuenta que su ruta de archivo main-is debe ser relativa al directorio de origen, por lo que en este caso, debe cambiarlo a Main.hs.