diff options
-rw-r--r-- | README | 24 | ||||
-rw-r--r-- | hssl.cabal | 12 | ||||
-rw-r--r-- | lib/Numeric/GSL.hs | 2 |
3 files changed, 20 insertions, 18 deletions
@@ -38,6 +38,8 @@ $ runhaskell Setup.lhs install --user | |||
38 | 38 | ||
39 | See below for installation on Windows. | 39 | See below for installation on Windows. |
40 | 40 | ||
41 | For undetermined reasons compilation with -O in Linux requires -fvia-C. | ||
42 | |||
41 | TESTS | 43 | TESTS |
42 | 44 | ||
43 | $ runhaskell examples/tests | 45 | $ runhaskell examples/tests |
@@ -51,15 +53,13 @@ produces segmentation faults when working with big matrices | |||
51 | on compiled programs. To expose the problem: | 53 | on compiled programs. To expose the problem: |
52 | 54 | ||
53 | $ cd examples | 55 | $ cd examples |
54 | $ ghc --make -O tests.hs | 56 | $ ghc --make -O -fvia-C tests.hs |
55 | $ ./tests --big | 57 | $ ./tests --big |
56 | 58 | ||
57 | If this crashes, just uninstall atlas3-sse2 (atlas3-base-dev will be used). | 59 | If this crashes, just uninstall atlas3-sse2 and use atlas3-base-dev instead. |
58 | Fortunately, atlas3-sse2-dev seems to work well on Ubuntu 7.10 Gutsy. | 60 | Fortunately, atlas3-sse2-dev seems to work well on Ubuntu 7.10 Gutsy. |
59 | |||
60 | A similar problem was reported at: | 61 | A similar problem was reported at: |
61 | 62 | http://article.gmane.org/gmane.linux.debian.devel.bugs.general/323065 | |
62 | http://article.gmane.org/gmane.linux.debian.devel.bugs.general/323065 | ||
63 | 63 | ||
64 | EXAMPLES | 64 | EXAMPLES |
65 | 65 | ||
@@ -112,10 +112,12 @@ INSTALLATION ON WINDOWS | |||
112 | 112 | ||
113 | 1) Download the developer files gsl-1.8-lib.zip from | 113 | 1) Download the developer files gsl-1.8-lib.zip from |
114 | http://gnuwin32.sourceforge.net/packages/gsl.htm | 114 | http://gnuwin32.sourceforge.net/packages/gsl.htm |
115 | and copy the gsl folder (under include) to the include folder of ghc: | 115 | and copy the gsl headers folder (under include) to: |
116 | C:\ghc\ghc.6.x.1\include | 116 | C:\ghc\ghc.6.x.1\include |
117 | These headers are also available from: | ||
118 | http://perception.inf.um.es/~aruiz/darcs/HSSL/gsl.zip | ||
117 | 119 | ||
118 | 2) Install the package as usual from the command line in the hssl-0.1 folder: | 120 | 2) Install the package as usual: |
119 | runhaskell Setup.lhs configure | 121 | runhaskell Setup.lhs configure |
120 | runhaskell Setup.lhs build | 122 | runhaskell Setup.lhs build |
121 | runhaskell Setup.lhs install | 123 | runhaskell Setup.lhs install |
@@ -125,7 +127,7 @@ INSTALLATION ON WINDOWS | |||
125 | 127 | ||
126 | 3) Copy libgsl.dll, libcblas.dll (from the binaries package gsl-1.8.bin.zip) | 128 | 3) Copy libgsl.dll, libcblas.dll (from the binaries package gsl-1.8.bin.zip) |
127 | and liblapack.dll (borrowed from the R system) to the folder in which | 129 | and liblapack.dll (borrowed from the R system) to the folder in which |
128 | hssl has been installed: C:\Program Files\haskell\hss-0.1\ghc-6.x.1. | 130 | hssl has been installed: C:\Program Files\haskell\hss-0.1\ghc-6.x.x. |
129 | Rename libcblas.dll to libblas.dll. | 131 | Rename libcblas.dll to libblas.dll. |
130 | They are needed to compile programs. | 132 | They are needed to compile programs. |
131 | These three dlls are available from: | 133 | These three dlls are available from: |
@@ -146,9 +148,7 @@ will produce a "non supported in this OS" runtime error. | |||
146 | If you find an alternative free and complete lapack.dll which works well | 148 | If you find an alternative free and complete lapack.dll which works well |
147 | for this system please let me know. | 149 | for this system please let me know. |
148 | 150 | ||
149 | NOTE: In windows the library is currently compiled with -O0 -fasm to avoid | 151 | The examples using graphics do not yet work in windows. |
150 | a C syntax error on clapack.h. You won't notice any appreciable difference | ||
151 | in performance, but I will try to fix it asap. | ||
152 | 152 | ||
153 | ACKNOWLEDGEMENTS | 153 | ACKNOWLEDGEMENTS |
154 | 154 | ||
@@ -1,12 +1,12 @@ | |||
1 | Name: hssl | 1 | Name: hssl |
2 | Version: 0.1 | 2 | Version: 0.1.0.0 |
3 | License: GPL | 3 | License: GPL |
4 | License-file: LICENSE | 4 | License-file: LICENSE |
5 | Author: Alberto Ruiz | 5 | Author: Alberto Ruiz |
6 | Maintainer: Alberto Ruiz <aruiz@um.es> | 6 | Maintainer: Alberto Ruiz <aruiz@um.es> |
7 | Stability: provisional | 7 | Stability: provisional |
8 | Homepage: http://alberrto.googlepages.com/gslhaskell | 8 | Homepage: http://alberrto.googlepages.com/gslhaskell |
9 | Synopsis: Simple Scientific Library | 9 | Synopsis: Linear algebra and numerical computations |
10 | Description: A purely functional interface to basic linear algebra computations | 10 | Description: A purely functional interface to basic linear algebra computations |
11 | and other numerical routines, internally implemented using | 11 | and other numerical routines, internally implemented using |
12 | GSL, BLAS and LAPACK. | 12 | GSL, BLAS and LAPACK. |
@@ -18,7 +18,7 @@ tested-with: GHC ==6.6.1, GHC ==6.8.1 | |||
18 | cabal-version: >=1.2 | 18 | cabal-version: >=1.2 |
19 | 19 | ||
20 | flag splitBase | 20 | flag splitBase |
21 | description: Choose the new smaller, split-up base package. | 21 | description: Choose the new smaller, split-up base package. |
22 | 22 | ||
23 | library | 23 | library |
24 | if flag(splitBase) | 24 | if flag(splitBase) |
@@ -26,10 +26,12 @@ library | |||
26 | else | 26 | else |
27 | build-depends: base < 3 | 27 | build-depends: base < 3 |
28 | 28 | ||
29 | ghc-options: -O | ||
30 | |||
29 | if os(windows) | 31 | if os(windows) |
30 | ghc-options: -O0 -fasm | 32 | ghc-options: -fasm |
31 | else | 33 | else |
32 | ghc-options: -O1 -fvia-C | 34 | ghc-options: -fvia-C |
33 | 35 | ||
34 | Build-Depends: haskell98 | 36 | Build-Depends: haskell98 |
35 | Extensions: ForeignFunctionInterface | 37 | Extensions: ForeignFunctionInterface |
diff --git a/lib/Numeric/GSL.hs b/lib/Numeric/GSL.hs index 784dfbc..32962ef 100644 --- a/lib/Numeric/GSL.hs +++ b/lib/Numeric/GSL.hs | |||
@@ -8,7 +8,7 @@ Maintainer : Alberto Ruiz (aruiz at um dot es) | |||
8 | Stability : provisional | 8 | Stability : provisional |
9 | Portability : uses -fffi and -fglasgow-exts | 9 | Portability : uses -fffi and -fglasgow-exts |
10 | 10 | ||
11 | This module reexports all the available GSL functions (except those in "LinearAlgebra"). | 11 | This module reexports all the available GSL functions (except those in "Numeric.LinearAlgebra"). |
12 | 12 | ||
13 | -} | 13 | -} |
14 | 14 | ||