[Haskell-beginners] Re: Installing hmatrix on OS X

Heinrich Apfelmus apfelmus at quantentunnel.de
Sat Feb 6 05:34:43 EST 2010


Duncan Mortimer wrote:
> I'm trying to install the easyVision library on OS X, following the
> notes at http://mit.edu/harold/Public/easyVisionNotes.html.
> 
> However, despite a few hours web trawling and hacking away with
> various cabal options, I can't get "hmatrix" to install.  I'm using OS
> X 10.5.8 with GHC 6.10.4.   I installed gsl using macports, as
> suggested in the notes above, but cabal doesn't seem to be able to
> find it.  The error I'm getting is:
> 
> [13:22:35 dmorti hmatrix-0.8.2.0]$ cabal install hmatrix
> Resolving dependencies...
> [1 of 1] Compiling Main             (
> /var/folders/05/05Ltg9vxE+a1hR422nbuE++++TI/-Tmp-/hmatrix-0.8.2.05810/hmatrix-0.8.2.0/Setup.lhs,
> /var/folders/05/05Ltg9vxE+a1hR422nbuE++++TI/-Tmp-/hmatrix-0.8.2.05810/hmatrix-0.8.2.0/dist/setup/Main.o
> )
> Linking /var/folders/05/05Ltg9vxE+a1hR422nbuE++++TI/-Tmp-/hmatrix-0.8.2.05810/hmatrix-0.8.2.0/dist/setup/setup
> ....
> Configuring hmatrix-0.8.2.0...
> Checking foreign libraries... FAIL
>  *** Sorry, I can't link GSL.
>  *** Please make sure that the appropriate -dev packages are installed.
>  *** You can also specify the required libraries using
>  *** cabal install hmatrix --configure-option=link:lib1,lib2,lib3,etc.
> setup: Package hmatrix-0.8.2.0 can't be built on this system.
> cabal: Error: some packages failed to install:
> hmatrix-0.8.2.0 failed during the building phase. The exception was:
> exit: ExitFailure 1
> 
> It appears that others have also had this error, but have been able to
> fix it up by including "--extra-lib-dirs" and "--extra-include-dirs"
> options, or using "ld-options: -framework vecLib".  I've tried both of
> these approaches, but still get the same errors.
> 
> Can anyone offer any suggestions?

hmatrix  uses a custom configure script which I think is supposed to
make live easier for Linux users. Unfortunately, it doesn't work on
MacOS X; you have to deactivate it. If I remember correctly, you can do
this with changing the build type to

   build-type: Simple

in the cabal file. Then, add the relevant libraries

   extra-lib-dirs: /opt/local/lib/
   extra-include-dirs: /opt/local/include/
   extra-libraries: gsl
   framework: Accelerate
   -- or  framework: vecLib  for earlier versions of MacOS X

and off you go.


Regards,
Heinrich Apfelmus

--
http://apfelmus.nfshost.com



More information about the Beginners mailing list