Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^2: Install Math::GSL fail

by cormanaz (Deacon)
on Mar 04, 2011 at 17:07 UTC ( [id://891487]=note: print w/replies, xml ) Need Help??


in reply to Re: Install Math::GSL fail
in thread Install Math::GSL fail

OK so per Anonymous, I deleted the existing Makefile. Per marto I started a new session. Per Khen1950fx I set the env variable, but it's at /usr/local/pkgconfig.

On trying to install again, I get

cpan[1]> install Math::GSL Going to read '/root/.cpan/Metadata' Database was generated on Fri, 04 Mar 2011 10:27:20 GMT Running install for module 'Math::GSL' Running make for L/LE/LETO/Math-GSL-0.22.tar.gz Checksum for /root/.cpan/sources/authors/id/L/LE/LETO/Math-GSL-0.22.ta +r.gz ok Scanning cache /root/.cpan/build for sizes ...................................................................... +......DONE CPAN.pm: Going to build L/LE/LETO/Math-GSL-0.22.tar.gz Checking for GSL..Package gsl was not found in the pkg-config search p +ath. Perhaps you should add the directory containing `gsl.pc' to the PKG_CONFIG_PATH environment variable No package 'gsl' found at Build.PL line 108 *** can not find package gsl *** check that it is properly installed and available in PKG_CONFIG_PA +TH at Build.PL line 108 Warning: No success on command[/usr/bin/perl Build.PL ] 'YAML' not installed, will not store persistent state LETO/Math-GSL-0.22.tar.gz /usr/bin/perl Build.PL -- NOT OK Running Build test Make had some problems, won't test Running Build install Make had some problems, won't install Could not read '/root/.cpan/build/Math-GSL-0.22-pXritF/META.yml'. Fall +ing back to other methods to determine prerequisites Failed during this command: LETO/Math-GSL-0.22.tar.gz : writemakefile NO '/usr +/bin/perl Build.PL ' returned status 256
GSL does not appear in /usr/local/pkgconfig, but it is installed
[root@stats corman]# yum info GSL Loaded plugins: langpacks, presto, refresh-packagekit Adding en_US to language list Installed Packages Name : gsl Arch : i686 Version : 1.14 Release : 1.fc14 Size : 2.3 M Repo : installed From repo : fedora Summary : The GNU Scientific Library for numerical analysis URL : http://www.gnu.org/software/gsl/ License : GPLv3 and GFDL and BSD Description : The GNU Scientific Library (GSL) is a collection of rout +ines for : numerical analysis, written in C.
But locate gsl.pc returns nothing :-/ locate GSL only returns stuff in /home/corman/.cpan/build. And it strikes me that this could be part of the problem. When I first tried to install this I forgot to SU to root. Do these files need to be in /root/.cpan/build if I'm running CPAN as root?

But that still doesn't address the gsl.pc issue... UPDATE: I installed YAML. Now CPAN says:

cpan[3]> install Math::GSL Running install for module 'Math::GSL' Running Build for L/LE/LETO/Math-GSL-0.22.tar.gz Has already been unwrapped into directory /root/.cpan/build/Math-GSL +-0.22-yrnKBo '/usr/bin/perl Build.PL ' returned status 256, won't make Running Build test Make had some problems, won't test Running Build install Make had some problems, won't install

Replies are listed 'Best First'.
Re^3: Install Math::GSL fail
by Eliya (Vicar) on Mar 04, 2011 at 18:28 UTC
    GSL does not appear in /usr/local/pkgconfig, but it is installed

    Maybe you need to install the respective *-dev package for the GSL library (?)

    Not entirely sure about Fedora, but most distros split their library packages into two parts: one for the runtime libs (always needed), and one for the "development stuff" (with the package name usually ending in "-dev" or "-devel"), like header files, static libs, the package config (".pc") file, etc., which are only needed if you build software that links against the library in question.

      Yes that was it. But now I am getting a bunch of warnings from GCC, and make test fails a couple. To wit:
      cpan[1]> install Math::GSL Going to read '/root/.cpan/Metadata' Database was generated on Fri, 04 Mar 2011 10:27:20 GMT Running install for module 'Math::GSL' Running make for L/LE/LETO/Math-GSL-0.22.tar.gz Checksum for /root/.cpan/sources/authors/id/L/LE/LETO/Math-GSL-0.22.ta +r.gz ok Scanning cache /root/.cpan/build for sizes ...................................................................... +......DONE CPAN.pm: Going to build L/LE/LETO/Math-GSL-0.22.tar.gz Checking for GSL..Found GSL version 1.14 Checking if gcc supports "-Wall"...yes Checking if gcc supports "-Wno-unused-function"...yes Checking if gcc supports "-Wno-unused-value"...yes Checking if gcc supports "-Wno-unused-function"...yes Checking if gcc supports "-Wno-unused-variable"...yes Checking if gcc supports "-g"...yes Creating new 'MYMETA.yml' with configuration results Creating new 'Build' script for 'Math-GSL' version '0.22' Have a great day! Building Math-GSL xs/Multiroots_wrap.c: In function ‘_wrap_gsl_multiroot_fdjacobian’: xs/Multiroots_wrap.c:2339:12: warning: assignment from incompatible po +inter type xs/Multiroots_wrap.c: In function ‘_wrap_gsl_multiroot_fsolver_functio +n_set’: xs/Multiroots_wrap.c:2902:12: warning: assignment from incompatible po +inter type xs/Multiroots_wrap.c: In function ‘_wrap_gsl_multiroot_fsolver_set’: xs/Multiroots_wrap.c:3337:12: warning: assignment from incompatible po +inter type xs/Roots_wrap.c: In function ‘_wrap_gsl_root_fdfsolver_fdf_set’: xs/Roots_wrap.c:3213:23: warning: character constant too long for its +type xs/Roots_wrap.c:3213:7: warning: passing argument 2 of ‘fprintf’ makes + pointer from integer without a cast /usr/include/stdio.h:355:12: note: expected ‘const char * __restrict__ +’ but argument is of type ‘int’ xs/Roots_wrap.c:3214:7: warning: ‘return’ with a value, in function re +turning void xs/Roots_wrap.c: In function ‘_wrap_gsl_root_fdfsolver_set’: xs/Roots_wrap.c:3776:23: warning: character constant too long for its +type xs/Roots_wrap.c:3776:7: warning: passing argument 2 of ‘fprintf’ makes + pointer from integer without a cast /usr/include/stdio.h:355:12: note: expected ‘const char * __restrict__ +’ but argument is of type ‘int’ xs/Roots_wrap.c:3777:7: warning: ‘return’ with a value, in function re +turning void LETO/Math-GSL-0.22.tar.gz ./Build -- OK Running Build test t/00-load.t ........ 1/52 # Testing Math::GSL 0.22 on i386-linux-threa +d-multi, Perl (/usr/bin/perl) 5.012003 t/00-load.t ........ ok t/01-pod.t ......... skipped: Test::Pod 1.00 required for testing POD t/BLAS.t ........... 1/109 Elements start differing at index 0, delta = 8.9263593745227e+195 $x->[0] = 8.9263593745227e+195 $y->[0] = 50 Elements start differing at index 0, delta = 7.43864376780752e+195 $x->[0] = 7.43864376780752e+195 $y->[0] = 34 Elements start differing at index 0, delta = 4.42423204080942e+214 $x->[0] = -4.42423204080942e+214 $y->[0] = 24 Elements start differing at index 0, delta = 4.22125628458722e+200 $x->[0] = 4.22125628458722e+200 $y->[0] = 46 Elements start differing at index 0, delta = 3.51771357048935e+200 $x->[0] = 3.51771357048935e+200 $y->[0] = 34 Elements start differing at index 0, delta = 24 $x->[0] = -8.0780671462807e-27 $y->[0] = 24 t/BLAS.t ........... ok t/BSpline.t ........ ok t/CBLAS.t .......... ok t/CDF.t ............ 1/794 # Failed test 'gsl_cdf_tdist_Qinv (3.18309885122757724e-5, 1.0) ?= 9 +999.99999999054, # res= +-9.45874489843845e-09, eps=2.3283064365387e-10' # at t/CDF.t line 834. # Failed test 'gsl_cdf_tdist_Pinv (3.18309885122757724e-5, 1.0) ?= - +9999.99999999054, # res= +-9.45874489843845e-09, eps=2.3283064365387e-10' # at t/CDF.t line 834. # Looks like you failed 2 tests of 794. t/CDF.t ............ Dubious, test returned 2 (wstat 512, 0x200) Failed 2/794 subtests t/Chebyshev.t ...... ok t/Combination.t .... ok t/Complex.t ........ ok t/Const.t .......... ok t/DHT.t ............ ok t/Deriv.t .......... ok t/Eigen.t .......... ok t/Errno.t .......... ok t/FFT.t ............ ok t/Fit.t ............ ok t/GSL.t ............ 1/18 Elements start differing at index 2, delta = 0.00099999999999989 $x->[2] = 3 $y->[2] = 3.001 Elements start differing at index 2, delta = 9.99999998363421e-08 $x->[2] = 3.0010001 $y->[2] = 3.0010002 t/GSL.t ............ ok t/Heapsort.t ....... ok t/Histogram.t ...... ok t/Histogram2D.t .... ok t/IEEEUtils.t ...... ok t/Integration.t .... ok t/Interp.t ......... ok t/Linalg.t ......... 1/70 Elements start differing at index 0, delta = 6 $x->[0] = -0 $y->[0] = -6 Elements start differing at index 0, delta = 8 $x->[0] = -4 $y->[0] = 4 t/Linalg.t ......... ok t/Machine.t ........ ok t/Matrix.t ......... 1/238 Elements start differing at index 1, delta = 0.707106781186548 $x->[1] = 4.32963728535968e-17 $y->[1] = -0.707106781186548 Elements start differing at index 1, delta = 0.707106781186548 $x->[1] = 4.32963728535968e-17 $y->[1] = 0.707106781186548 t/Matrix.t ......... 109/238 Elements start differing at index 1, delta = 1 $x->[1] = 3 $y->[1] = 2 t/Matrix.t ......... ok t/MatrixComplex.t .. 1/38 Elements start differing at index 1, delta = 1 $x->[1] = 3 $y->[1] = 4 Elements start differing at index 1, delta = 1 $x->[1] = 3 $y->[1] = 2 t/MatrixComplex.t .. ok t/Min.t ............ ok t/Monte.t .......... 1/15 Elements start differing at index 0, delta = 2.78505685129308e+16 $x->[0] = 0.333333333333333 $y->[0] = 2.78505685129308e+16 t/Monte.t .......... ok t/Multifit.t ....... ok t/Multimin.t ....... ok t/Multiroots.t ..... ok t/NTuple.t ......... 1/11 This is the end at t/NTuple.t line 14. t/NTuple.t ......... ok t/ODEIV.t .......... ok t/Permutation.t .... ok t/Poly.t ........... Elements start differing at index 0, delta = 4 $x->[0] = 0 $y->[0] = 4 t/Poly.t ........... 1/7 Elements start differing at index 0, delta = 0.674 $x->[0] = 0 $y->[0] = 0.674 t/Poly.t ........... ok t/PowInt.t ......... ok t/QRNG.t ........... ok t/RNG.t ............ ok t/Randist.t ........ ok t/Roots.t .......... ok t/SF.t ............. ok t/Siman.t .......... ok t/Sort.t ........... ok t/Spline.t ......... ok t/Statistics.t ..... ok t/Sum.t ............ ok t/Sys.t ............ ok t/Vector.t ......... 1/142 Elements start differing at index 0, delta = 9 $x->[0] = 1 $y->[0] = 10 Elements start differing at index 0, delta = 9 $x->[0] = 1 $y->[0] = 10 t/Vector.t ......... ok t/VectorComplex.t .. ok t/Wavelet.t ........ ok t/Wavelet2D.t ...... ok Test Summary Report ------------------- t/CDF.t (Wstat: 512 Tests: 794 Failed: 2) Failed tests: 481, 523 Non-zero exit status: 2 t/Matrix.t (Wstat: 0 Tests: 238 Failed: 0) TODO passed: 209-212 t/Vector.t (Wstat: 0 Tests: 142 Failed: 0) TODO passed: 141-142 Files=52, Tests=3578, 18 wallclock secs ( 1.53 usr 0.27 sys + 13.75 c +usr 1.58 csys = 17.13 CPU) Result: FAIL Failed 1/52 test programs. 2/3578 subtests failed. LETO/Math-GSL-0.22.tar.gz ./Build test -- NOT OK //hint// to see the cpan-testers results for installing this module, t +ry: reports LETO/Math-GSL-0.22.tar.gz Running Build install make test had returned bad status, won't install without force Failed during this command: LETO/Math-GSL-0.22.tar.gz : make_test NO
        Note that there's only 1 failing test script (namely t/CDF.t) and that it fails only 2 tests (tests 481 and 523).
        All the other stuff is in relation to 'TODO' tests, and they don't count as failures.

        On MS Windows, I get the same 2 failing tests as you get - I haven't yet investigated further.

        Looks to me that you've got a fairly good build of Math::GSL - why not just force install it and see how it goes for you ?

        Cheers,
        Rob
        I get the same errors on Mac OSx 10.8.2 and gcc 4.6.3 :
        xs/Roots_wrap.1.15.c:3283:7: error: void function '_wrap_gsl_root_fdfs +olver_fdf_set' should not return a value [-Wreturn-type] return (gsl_nan()); ^ ~~~~~~~~~~~ ... xs/Roots_wrap.1.15.c:3840:7: error: void function '_wrap_gsl_root_fdfs +olver_set' should not return a value [-Wreturn-type] return (gsl_nan()); ^ ~~~~~~~~~~~
        This thread is a bit old. I wonder if anybody has made any progress on this?
Re^3: Install Math::GSL fail
by Anonymous Monk on Mar 04, 2011 at 17:21 UTC
    Why do you insist on using the cpan shell?
      Because that seems to be the generally accepted way of installing packages and because for a complex package like this I don't want to spend all day manually installing dependencies, etc. Why do you have a better way to do it?
        Why do you have a better way to do it?

        Yes. By all means, use cpan to install all the dependencies Math::GSL has, but then use look to instll Math::GSL manually. Its easier than trying to filter all noise cpan makes other methods to determine prerequisites

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://891487]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having an uproarious good time at the Monastery: (7)
As of 2024-04-23 19:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found