vin.hephaistion has asked for the wisdom of the Perl Monks concerning the following question:

I want to install Math::Pari package on Windows 2008 server. I am using ActivePerl 64bit version (perl version 5.16)I tried following:

1)install using ppm

C:\Perl64>ppm install Math::Pari ppm install failed: Can't find any package that provides Math::Pari

didnot help ,so, Then installed cpan and MinGW64 using ppm

2) install using cpan:(not include complete output)

C:\Users\Administrator>cpan Math::Pari Set up gcc environment - gcc.exe (rubenvb-4.5.4) 4.5.4 CPAN: Term::ANSIColor loaded ok (v4.02) CPAN: Storable loaded ok (v2.34) Reading 'C:\Perl64\cpan\Metadata' Database was generated on Thu, 11 Apr 2013 10:07:29 GMT Running install for module 'Math::Pari' Running make for I/IL/ILYAZ/modules/Math-Pari-2.01080605.tar.gz CPAN: Digest::SHA loaded ok (v5.84) CPAN: Compress::Zlib loaded ok (v2.06) Checksum for C:\Perl64\cpan\sources\authors\id\I\IL\ILYAZ\modules\Math +-Pari-2.01080605.tar.gz ok CPAN: Archive::Tar loaded ok (v1.90) Math-Pari-2.01080605/ Math-Pari-2.01080605/Changes Math-Pari-2.01080605/func_codes.h Math-Pari-2.01080605/INSTALL Math-Pari-2.01080605/libPARI/ Math-Pari-2.01080605/libPARI/codes_2014 Math-Pari-2.01080605/libPARI/expected_codes Math-Pari-2.01080605/libPARI/extract_codes.pl Math-Pari-2.01080605/libPARI/gphelp Math-Pari-2.01080605/libPARI/Makefile.PL Math-Pari-2.01080605/Makefile.PL Math-Pari-2.01080605/MANIFEST Math-Pari-2.01080605/META.yml Math-Pari-2.01080605/Pari.pm Math-Pari-2.01080605/Pari.xs Math-Pari-2.01080605/PariInit.pm Math-Pari-2.01080605/patches/ Math-Pari-2.01080605/patches/diff_2.1.2_gccism Math-Pari-2.01080605/patches/diff_2.1.3_interface Math-Pari-2.01080605/patches/diff_2.1.4_interface Math-Pari-2.01080605/patches/diff_2.1.6_align_power_of_2 Math-Pari-2.01080605/patches/diff_2.1.6_no-common Math-Pari-2.01080605/patches/diff_2.1.6_ploth64 Math-Pari-2.01080605/patches/diff_2.1.7_-O Math-Pari-2.01080605/patches/diff_2.1.7_div Math-Pari-2.01080605/patches/diff_2.1.7_mingw-w64 Math-Pari-2.01080605/patches/diff_2.1.7_restart Math-Pari-2.01080605/patches/diff_2.2.2_interface Math-Pari-2.01080605/patches/diff_2.3.5_mingw-w64 Math-Pari-2.01080605/patches/diff_pari-2.1.3-ix86-divl Math-Pari-2.01080605/patches/patch-pari-unnormalized-float Math-Pari-2.01080605/README Math-Pari-2.01080605/t/ Math-Pari-2.01080605/t/000_load-problem.t Math-Pari-2.01080605/t/00_Pari.t Math-Pari-2.01080605/t/PlotRect.t Math-Pari-2.01080605/t/zz_leak.t Math-Pari-2.01080605/test_eng/ Math-Pari-2.01080605/test_eng/ex.t Math-Pari-2.01080605/test_eng/Testout.pm Math-Pari-2.01080605/TODO Math-Pari-2.01080605/typemap Math-Pari-2.01080605/utils/ Math-Pari-2.01080605/utils/chap3_to_pod Math-Pari-2.01080605/utils/comp_funcs.pl Math-Pari-2.01080605/utils/foncpari.pl Math-Pari-2.01080605/utils/inc.h Math-Pari-2.01080605/utils/inc_h.diff Math-Pari-2.01080605/utils/Math/ Math-Pari-2.01080605/utils/Math/PariBuild.pm Math-Pari-2.01080605/utils/notes Math-Pari-2.01080605/utils/paridoc_to_pod Math-Pari-2.01080605/utils/README CPAN: File::Temp loaded ok (v0.22) CPAN: Parse::CPAN::Meta loaded ok (v1.4404) CPAN: CPAN::Meta loaded ok (v2.120921) CPAN: Module::CoreList loaded ok (v2.80) CPAN.pm: Building I/IL/ILYAZ/modules/Math-Pari-2.01080605.tar.gz Set up gcc environment - gcc.exe (rubenvb-4.5.4) 4.5.4 Did not find GP/PARI build directory around. Do you want to me to fetch GP/PARI automatically? (If you do not, you will need to fetch it manually, and/or direct me + to the directory with GP/PARI source via the command-line option parid +ir=/dir) Make sure you have a large scrollback buffer to see the messages, or ` +tee' the STDOUT/STDERR to a file. Fetch? (y/n, press Enter) y Getting GP/PARI from ftp://megrez.math.u-bordeaux.fr/pub/pari/unix/ Not in this directory, now chdir('OLD')... Available beta versions: `2.0.20 2.0.18 2.0.17 2.0.16 2.0.21 2.0.19' Latest supported beta is `pari-2.0.21.beta.tgz' Available golden versions: `2.1.6 2.1.3 2.1.0 2.1.1 2.1.5 2.1.7 1.39.0 +3 2.1.2 2.1.4' Latest supported golden is `pari-2.1.7.tgz' Picking golden version 2.1.7, file pari-2.1.7.tgz Downloading `ftp://megrez.math.u-bordeaux.fr/pub/pari/unix/pari-2.1.7. +tgz'... Downloaded... Extracting... gzip -dc pari-2.1.7.tgz | tar -xvf - 'gzip' is not recognized as an internal or external command, operable program or batch file. Can't un-targz PARI: $!=Bad file descriptor, exitcode=65280. Now retry with "C:\Perl64\bin\perl.exe" "-MArchive::Tar" "-wle" "Arc +hive::Tar->new(shift)->extract()" "pari-2.1.7.tgz" Looking for patches for 2.1.7... Patching... 'patch' is not recognized as an internal or external command, operable program or batch file. cd pari-2.1.7 && patch -p1 < ..\patches\diff_2.1.7_mingw-w64 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... cd pari-2.1.7 && patch -p1 < ..\patches\patch-pari-unnormalized-float 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... cd pari-2.1.7 && patch -p1 < ..\patches\diff_2.1.7_-O 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... cd pari-2.1.7 && patch -p1 < ..\patches\diff_2.1.7_div 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... cd pari-2.1.7 && patch -p1 < ..\patches\diff_2.1.6_align_power_of_2 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... cd pari-2.1.7 && patch -p1 < ..\patches\diff_2.1.7_restart 'patch' is not recognized as an internal or external command, operable program or batch file. ...Could not patch: $?=256, ; continuing anyway... Finished patching... Setting up Math::Pari with Perl 5.016003 on MSWin32 version 5.2; cc=C:\Perl64\site\bin\gcc.exe, gccversion=gcc.exe (rubenvb-4.5.4) 4 +.5.4, cccdlflags=' ', ccflags='-DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVA +TIVE -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONT +EXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DHASATTRIBUTE -fno-strict-alias +ing -mms-bitfields', optimize='-O2', ld=C:\Perl64\site\bin\g++.exe, ldflags='-L"C:\Perl64\lib\CORE"'. Found GP/PARI build directory in pari-2.1.7 (integer-formatted version 2001007). ### GP/PARI library version 2.1.* has many problems fixed in version +s 2.3.*. ### Especially important are the problems with symbols `hiremainder' + and ### `overflow' - if your build fails and error messages contain thes +e ### words, updating to 2.3.* might allow your use of fast processor- +specific ### assembler code.) ### Switching to 2.3.* should be as simple as giving Makefile.PL an +option ### version23_ok=1 ### (if you or Makefile.PL already downloaded-and-extracted versio +n-2.1.* ### distribution, give an extra option, force_download). ### Alternatively, give option ### paridir=DIRECTORY-of-extracted-distribution ### However, keep in mind: v.2.3.* supports only plotting to PostScr +ipt. . . . Checking if your kit is complete... Looks good Warning (mostly harmless): No library found for -lm Warning (mostly harmless): No library found for -lkernel32 Warning (mostly harmless): No library found for -luser32 Warning (mostly harmless): No library found for -lgdi32 Warning (mostly harmless): No library found for -lwinspool Warning (mostly harmless): No library found for -lcomdlg32 Warning (mostly harmless): No library found for -ladvapi32 Warning (mostly harmless): No library found for -lshell32 Warning (mostly harmless): No library found for -lole32 Warning (mostly harmless): No library found for -loleaut32 Warning (mostly harmless): No library found for -lnetapi32 Warning (mostly harmless): No library found for -luuid Warning (mostly harmless): No library found for -lws2_32 Warning (mostly harmless): No library found for -lmpr Warning (mostly harmless): No library found for -lwinmm Warning (mostly harmless): No library found for -lversion Warning (mostly harmless): No library found for -lodbc32 Warning (mostly harmless): No library found for -lodbccp32 Warning (mostly harmless): No library found for -lcomctl32 Warning (mostly harmless): No library found for -lmsvcrt 'uname' is not recognized as an internal or external command, operable program or batch file. ...Processor of family `' detected #### Do not know how to build for assembler `'. #### #### Reversing to assembler-less type `port'. #### #### #### #### If you think your processor's assembler is supported #### #### by PARI, edit libPARI/Makefile.PL and report. #### #### #### #### Alternatively, specify machine=YOURTYPE or machine=none #### #### on the #### #### perl Makefile.PL #### #### command line. #### #### Recognized types: #### #### alpha hppa m86k none sparcv7 sparcv8 sparcv8_micro #### #### sparcv8_super ix86 (ppc ia64 after 2.2.7) #### ...I will use portable assembler-less build ...Assembler is GNU assembler Warning (mostly harmless): No library found for -lm Warning (mostly harmless): No library found for -lkernel32 Warning (mostly harmless): No library found for -luser32 Warning (mostly harmless): No library found for -lgdi32 Warning (mostly harmless): No library found for -lwinspool Warning (mostly harmless): No library found for -lcomdlg32 Warning (mostly harmless): No library found for -ladvapi32 Warning (mostly harmless): No library found for -lshell32 Warning (mostly harmless): No library found for -lole32 Warning (mostly harmless): No library found for -loleaut32 Warning (mostly harmless): No library found for -lnetapi32 Warning (mostly harmless): No library found for -luuid Warning (mostly harmless): No library found for -lws2_32 Warning (mostly harmless): No library found for -lmpr Warning (mostly harmless): No library found for -lwinmm Warning (mostly harmless): No library found for -lversion Warning (mostly harmless): No library found for -lodbc32 Warning (mostly harmless): No library found for -lodbccp32 Warning (mostly harmless): No library found for -lcomctl32 Warning (mostly harmless): No library found for -lmsvcrt Writing Makefile for Math::PARI::libPARI Writing MYMETA.yml and MYMETA.json Writing Makefile for Math::Pari Writing MYMETA.yml and MYMETA.json . . . . . In file included from c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86 +_64-w64-mingw32/4.5.4/../../../../x86_64-w64-mingw32/include/winnt.h: +1446:0, from c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86 +_64-w64-mingw32/4.5.4/../../../../x86_64-w64-mingw32/include/windef.h +:137, from c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86 +_64-w64-mingw32/4.5.4/../../../../x86_64-w64-mingw32/include/windows. +h:59, from ../pari-2.1.7/src/gp/highlvl.c:77: c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/ +../../../../x86_64-w64-mingw32/include/intrin.h: At top level: c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/ +../../../../x86_64-w64-mingw32/include/intrin.h:306:5: error: conflic +ting types for 'abs' In file included from c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86 +_64-w64-mingw32/4.5.4/../../../../x86_64-w64-mingw32/include/windows. +h:62:0, from ../pari-2.1.7/src/gp/highlvl.c:77: c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/ +../../../../x86_64-w64-mingw32/include/winuser.h:4070:72: error: expe +cted ';', ',' or ')' before 'gpsi' c:\perl64\site\lib\auto\mingw\bin\../lib/gcc/x86_64-w64-mingw32/4.5.4/ +../../../../x86_64-w64-mingw32/include/winuser.h:4071:75: error: expe +cted ';', ',' or ')' before 'gpsi' ../pari-2.1.7/src/gp/highlvl.c: In function 'type0': ../pari-2.1.7/src/gp/highlvl.c:201:25: warning: cast from pointer to i +nteger of different size ../pari-2.1.7/src/gp/highlvl.c:204:8: warning: cast from pointer to in +teger of different size ../pari-2.1.7/src/gp/highlvl.c:218:12: warning: cast from pointer to i +nteger of different size dmake.exe: Error code 129, while making 'highlvl.o' dmake.exe: Error code 255, while making 'libPARI\libPARI.a' ILYAZ/modules/Math-Pari-2.01080605.tar.gz C:\Perl64\site\bin\dmake.exe -- NOT OK CPAN: YAML::XS loaded ok (v0.39) Running make test Can't test without successful make Running make install Make had returned bad status, install seems impossible

Please tell what is wrong here!!!

Replies are listed 'Best First'.
Re: Math::Pari not getting installed
by Anonymous Monk on Apr 12, 2013 at 12:52 UTC

    Please tell what is wrong here!!!

    You're missing patch program, thats what the error says

    'patch' is not recognized as an internal or external command, operable program or batch file.

Re: Math::Pari not getting installed
by marto (Cardinal) on Apr 12, 2013 at 12:50 UTC

    Please read what you're telling us:

    gzip -dc pari-2.1.7.tgz | tar -xvf - 'gzip' is not recognized as an internal or external command, operable program or batch file.

    Read and understand the module installation documentation INSTALL, a manual proccess is documented there. Or install gzip for your platform.

      But the line after that shows a successful extract with the fallback, Archive::Tar.

      The real problem, as noted below by an anonymous monk, is missing patch.

      package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name
Re: Math::Pari not getting installed
by dasgar (Priest) on Apr 12, 2013 at 13:15 UTC

    I probably don't know what I'm talking about, but I'm wondering if there is an issue with Math::Pari (and/or required libraries/modules/etc.) and having them in a 64-bit version.

    For a comparison, I took a quick look at what Strawberry Perl includes in their distributions. For 32-bit 5.16.3.1 (release notes), they do include the Math::Pari module. However, for 64-bit 5.16.3.1 (release notes), they do not include that module. In the "Known Issues" section of the release notes, they have a link to a bug report (https://rt.cpan.org/Public/Bug/Display.html?id=52146). That bug report might give you some clues to help you with your situation.

      I think you're correct to raise these issues, but as you can see from their installation attempt, cpan downloads pari-2.1.7.tgz then errors because it can't find gzip.

Re: Math::Pari not getting installed
by hdb (Monsignor) on Apr 12, 2013 at 12:57 UTC

    It seems funny that the script downloads a UNIX version of PARI and an old one as well. I would try to manually install the libraries PARI and GP from

    ftp://megrez.math.u-bordeaux.fr/pub/pari/windows/

    and then try to install the module again.

      It seems funny that the script downloads a UNIX version of PARI and an old one as well.

      you're imagening things