My question comes in two parts. The first is that when I compile my project I get a long list of errors of the form
(.text+0x137f): undefined reference to `raytrzuAd6RComi0WmBiuT4685WWH_Types_zdfBinaryColor_closure'
The full list of errors can be found here The code that produces this error can be found here.
I am using ghc 7.10.1 and cabal 1.22.4.0.
The second part of my question is that despite following the same cabal structure as this question, cabal still recompiles the library 3 times each cabal build despite the executables and the library all having a unique hs-source-dir
and depending on the library.
EDIT: as far as the triple compilation is concerned, the first time it builds .o
files [ 2 of 15] Compiling Types ( src/Types.hs, dist/build/Types.o )
. The second time it builds .p_o
files [ 2 of 15] Compiling Types ( src/Types.hs, dist/build/Types.p_o )
which are caused by TemplateHaskell and profiling.