Re: hmatrix
Hello Adrian, This sounds like a definite bug in Cabal, in that it should report accordingly if it is looking for both static and dynamic versions of the library, and only finds the static one. Can you file a bug report? Thanks, Edward Excerpts from Adrian Victor Crisciu's message of 2014-08-23 23:45:48 +0100: > After 3 days of frustrating trials and errors, I managed to install the new > hmatrix package on Slackware 13.1. I post this message in case anyone else > hits the same problem, as the process requires some alteration of the > standard build process of ATLAS, LAPACK, hmatrix and hmatrix-gsl. The > following steps assume that LAPACK is built against an optimized ATLAS > library. > > 1.) By default, ATLAS builds only static libraries. However, hmatrix needs > shared objects, so ATLAS should be configured with the --share option and, > after the build is complete, the commands "make shared" and/ore "make > ptshared" need to be issued in BUILDDIR/lib > > 2.) LAPACK also buils by default only static libraries and, for the same > reason as above, we need position independent conde in ALL the objects in > liblapack. In order to do this we need to > 2.1.) Add -fPIC to OPTS, NOOPT and LOADOPT in LAPACKROOT/make.inc >2.2.) Change the BLASLIB macro in the same file to point to the > optimized tatlas (os satlas) library > 2.3.) Add the target liblapack.so to SRC/Makefile: > ../liblapack.so: $(ALLOBJ) > gfortran -shared -W1 -o $@ $(ALLOBJ) > (This step is a corected version of > http://theoryno3.blogspot.ro/2010/12/compiling-lapack-as-shared-library-in.html > ) > > 3.) Change the extra-libraries line in hmatrix.cabal to read: > extra-libraries: tatlas lapack > > 4.) Change the extra-library line in hmatrix-gsl to read: >extra-libraries: gslcblas gsl > > Again, this procedure worked for may Slackware 13.1 linux box, but I think > it will work on any decent linux machine. > > Thanks everyone for your time and useful comments! > Adrian Victor. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
hmatrix
After 3 days of frustrating trials and errors, I managed to install the new hmatrix package on Slackware 13.1. I post this message in case anyone else hits the same problem, as the process requires some alteration of the standard build process of ATLAS, LAPACK, hmatrix and hmatrix-gsl. The following steps assume that LAPACK is built against an optimized ATLAS library. 1.) By default, ATLAS builds only static libraries. However, hmatrix needs shared objects, so ATLAS should be configured with the --share option and, after the build is complete, the commands "make shared" and/ore "make ptshared" need to be issued in BUILDDIR/lib 2.) LAPACK also buils by default only static libraries and, for the same reason as above, we need position independent conde in ALL the objects in liblapack. In order to do this we need to 2.1.) Add -fPIC to OPTS, NOOPT and LOADOPT in LAPACKROOT/make.inc 2.2.) Change the BLASLIB macro in the same file to point to the optimized tatlas (os satlas) library 2.3.) Add the target liblapack.so to SRC/Makefile: ../liblapack.so: $(ALLOBJ) gfortran -shared -W1 -o $@ $(ALLOBJ) (This step is a corected version of http://theoryno3.blogspot.ro/2010/12/compiling-lapack-as-shared-library-in.html ) 3.) Change the extra-libraries line in hmatrix.cabal to read: extra-libraries: tatlas lapack 4.) Change the extra-library line in hmatrix-gsl to read: extra-libraries: gslcblas gsl Again, this procedure worked for may Slackware 13.1 linux box, but I think it will work on any decent linux machine. Thanks everyone for your time and useful comments! Adrian Victor. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
On Fri, Aug 22, 2014 at 10:38 AM, Edward Z. Yang wrote: > > cabal install --enable-documentation > > --extra-include-dirs=/usr;local/include --extra-lib-dirs=/usr/local/lib > > hmatrix > > Is that semicolon a typo? It kinda has to be, they'd have gotten rather more interesting errors otherwise. -- brandon s allbery kf8nh sine nomine associates allber...@gmail.com ballb...@sinenomine.net unix, openafs, kerberos, infrastructure, xmonadhttp://sinenomine.net ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
Excerpts from Adrian Victor Crisciu's message of 2014-08-22 10:55:00 +0100: > I tried the following command line: > > cabal install --enable-documentation > --extra-include-dirs=/usr;local/include --extra-lib-dirs=/usr/local/lib > hmatrix Is that semicolon a typo? Edward ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
What Linux distro? If you're on an unusual distro You might just need to patch the build process to look up the right names. Also have you contacted the hmatrix maintainer to ask him for help. HMATRIX does have an issue tracker on github etc On Friday, August 22, 2014, Adrian Victor Crisciu wrote: > I tried the following command line: > > cabal install --enable-documentation > --extra-include-dirs=/usr;local/include --extra-lib-dirs=/usr/local/lib > hmatrix > > and got the following: > > Resolving dependencies... > Configuring hmatrix-0.16.0.4... > cabal: Missing dependencies on foreign libraries: > * Missing C libraries: blas, lapack > This problem can usually be solved by installing the system packages that > provide these libraries (you may need the "-dev" versions). If the > libraries > are already installed but in a non-standard location then you can use the > flags --extra-include-dirs= and --extra-lib-dirs= to specify where they > are. > Failed to install hmatrix-0.16.0.4 > cabal: Error: some packages failed to install: > hmatrix-0.16.0.4 failed during the configure step. The exception was: > ExitFailure 1 > > As I said before, the libraries for blas and lapack ARE in /usr/local/lib > and the header files ARE in /usr/local/include. > > Is it possible for hmatrix to look for another version of atlas/blas and > lapack? I have installed atlas-3.3.8 and lapack-3.4.0 > > Adrian. > > ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
I tried the following command line: cabal install --enable-documentation --extra-include-dirs=/usr;local/include --extra-lib-dirs=/usr/local/lib hmatrix and got the following: Resolving dependencies... Configuring hmatrix-0.16.0.4... cabal: Missing dependencies on foreign libraries: * Missing C libraries: blas, lapack This problem can usually be solved by installing the system packages that provide these libraries (you may need the "-dev" versions). If the libraries are already installed but in a non-standard location then you can use the flags --extra-include-dirs= and --extra-lib-dirs= to specify where they are. Failed to install hmatrix-0.16.0.4 cabal: Error: some packages failed to install: hmatrix-0.16.0.4 failed during the configure step. The exception was: ExitFailure 1 As I said before, the libraries for blas and lapack ARE in /usr/local/lib and the header files ARE in /usr/local/include. Is it possible for hmatrix to look for another version of atlas/blas and lapack? I have installed atlas-3.3.8 and lapack-3.4.0 Adrian. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
You need to pass cabal the extra includes and extra lib dirs flags with the explicit paths to the lib and include folders that have your blas and lapack. The logic in hmatrix can only check stadard paths. On Thursday, August 21, 2014, Adrian Victor Crisciu wrote: > Hi, > > Yes, they are in /usr/local/include. Moreover, /usr/local/lib64 is a > symbolic link to /usr/local/lib (as may system is a 64-bit anyway), so the > libraries should be found regardless of the path they are searched on. > > I have atlas-3.3.8 and lapack-3.4.0. Are newer versions required? > > Thanks! > Adrian. > ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
Hi, Yes, they are in /usr/local/include. Moreover, /usr/local/lib64 is a symbolic link to /usr/local/lib (as may system is a 64-bit anyway), so the libraries should be found regardless of the path they are searched on. I have atlas-3.3.8 and lapack-3.4.0. Are newer versions required? Thanks! Adrian. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
Hello Adrian, Are the header files for blas and lapack on your system? (I'm not sure what the configure script for other software was checking for.) Edward Excerpts from Adrian Victor Crisciu's message of 2014-08-21 14:22:58 +0100: > Sorry! > > This is the the failed cabal install command and its output: The blas > (libcblas.so) and lapack (both liblapack.a and liblapack.so) are in > /usr/local/lib64, so they can be easily found. And the configure script for > other software did found them. > > cabal install --enable-documentation hmatrix > > Resolving dependencies... > Configuring hmatrix-0.16.0.4... > cabal: Missing dependencies on foreign libraries: > * Missing C libraries: blas, lapack > This problem can usually be solved by installing the system packages that > provide these libraries (you may need the "-dev" versions). If the libraries > are already installed but in a non-standard location then you can use the > flags --extra-include-dirs= and --extra-lib-dirs= to specify where they are. > Failed to install hmatrix-0.16.0.4 > cabal: Error: some packages failed to install: > hmatrix-0.16.0.4 failed during the configure step. The exception was: > ExitFailure 1 > > Adrian-Victor ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
Sorry! This is the the failed cabal install command and its output: The blas (libcblas.so) and lapack (both liblapack.a and liblapack.so) are in /usr/local/lib64, so they can be easily found. And the configure script for other software did found them. cabal install --enable-documentation hmatrix Resolving dependencies... Configuring hmatrix-0.16.0.4... cabal: Missing dependencies on foreign libraries: * Missing C libraries: blas, lapack This problem can usually be solved by installing the system packages that provide these libraries (you may need the "-dev" versions). If the libraries are already installed but in a non-standard location then you can use the flags --extra-include-dirs= and --extra-lib-dirs= to specify where they are. Failed to install hmatrix-0.16.0.4 cabal: Error: some packages failed to install: hmatrix-0.16.0.4 failed during the configure step. The exception was: ExitFailure 1 Adrian-Victor ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: hmatrix-0.16.0.4 installation problem
On Thu, Aug 21, 2014 at 3:26 PM, Adrian Victor Crisciu wrote: > Hi, > > I tried to upgrade from hmatrix 0.15.2.1 to hmatrix-0.16.0.4 and both > cabal install and cabal configure complained about missing blas and lapack > libraries. However, I do have those libraries installed, and I passed their > locations through --extra-include-dirs and --extra-lib-dirs with no results. > > I use cabal 1.20.0.3, ghc 7.8.2 and gcc 4.4.4 on a Slackware-13.1 64-bit > linux box. > > Any idea of what is going wrong (and how to correct it?) > > Thanks, > Adrian-Victor. > > > A report like this is much easier to answer if it includes the actual command you ran and its output. Michael ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
hmatrix-0.16.0.4 installation problem
Hi, I tried to upgrade from hmatrix 0.15.2.1 to hmatrix-0.16.0.4 and both cabal install and cabal configure complained about missing blas and lapack libraries. However, I do have those libraries installed, and I passed their locations through --extra-include-dirs and --extra-lib-dirs with no results. I use cabal 1.20.0.3, ghc 7.8.2 and gcc 4.4.4 on a Slackware-13.1 64-bit linux box. Any idea of what is going wrong (and how to correct it?) Thanks, Adrian-Victor. ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users