Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

install with cpan client goes into a infinite loop #277

Closed
glasswalk3r opened this issue Feb 26, 2018 · 14 comments
Closed

install with cpan client goes into a infinite loop #277

glasswalk3r opened this issue Feb 26, 2018 · 14 comments
Assignees

Comments

@glasswalk3r
Copy link

Hi there,

Got my smoker in a infinite loop trying to install MarpaX::Simple, which depends on Marpa::R2.

After some testing, I detected that the issue happens with the CPAN client (cpan) and cperl 5.24.3c, built on OpenBSD 6.2. Here is what I got:

cpan[1]> install MarpaX::Simple
Database was generated on Wed, 21 Feb 2018 14:27:17 GMT

Running install for module 'MarpaX::Simple'
Checksum for /minicpan/authors/id/P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz ok
Scanning cache /mnt/cpan_build_dir/vegeta for sizes
............................................................................DONE
Configuring P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Warning: prerequisite Marpa::R2 0 not found.
Generating a Unix-style Makefile
Writing Makefile for MarpaX::Simple
Writing MYMETA.yml and MYMETA.json
(/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl Makefile.PL exited with 0)
CPAN::Reporter: Makefile.PL result is 'pass', No errors.
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl Makefile.PL -- OK
Running make for P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz
---- Unsatisfied dependencies detected during ----
----    PERLANCAR/MarpaX-Simple-0.07.tar.gz   ----
    Marpa::R2 [requires]
Running install for module 'Marpa::R2'
Checksum for /minicpan/authors/id/J/JK/JKEGL/Marpa-R2-4.000000.tar.gz ok
  JKEGL/Marpa-R2-4.000000.tar.gz
  [configure_requires] -- NOT OK
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been unwrapped into directory /mnt/cpan_build_dir/vegeta/MarpaX-Simple-0.07-0
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been prepared
Running make for P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz
---- Unsatisfied dependencies detected during ----
----    PERLANCAR/MarpaX-Simple-0.07.tar.gz   ----
    Marpa::R2 [requires]
Running install for module 'Marpa::R2'
  JKEGL/Marpa-R2-4.000000.tar.gz
  Has already been unwrapped into directory /mnt/cpan_build_dir/vegeta/Marpa-R2-4.000000-0
  JKEGL/Marpa-R2-4.000000.tar.gz
  [configure_requires] -- NOT OK
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been unwrapped into directory /mnt/cpan_build_dir/vegeta/MarpaX-Simple-0.07-0
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been prepared
Running make for P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz
---- Unsatisfied dependencies detected during ----
----    PERLANCAR/MarpaX-Simple-0.07.tar.gz   ----
    Marpa::R2 [requires]
Running install for module 'Marpa::R2'
  JKEGL/Marpa-R2-4.000000.tar.gz
  Has already been unwrapped into directory /mnt/cpan_build_dir/vegeta/Marpa-R2-4.000000-0
  JKEGL/Marpa-R2-4.000000.tar.gz
  [configure_requires] -- NOT OK
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been unwrapped into directory /mnt/cpan_build_dir/vegeta/MarpaX-Simple-0.07-0
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  Has already been prepared
Running make for P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz
^CSignal SIGINT received, but no signal handler set.
-bash-4.4$ cpan

There seems to be running another CPAN process (pid 81025).  Contacting...
Other job not responding. Shall I overwrite the lockfile '/home/vegeta/.cpan/.lock'? (Y/n) [y]

cpan shell -- CPAN exploration and modules installation (v2.1801)
Enter 'h' for help.

                                                                                                                                                                                              cpan[1]> q
Lockfile removed.
-bash-4.4$ perl -v

This is cperl 5, version 24, subversion 3 (v5.24.3c) built for OpenBSD.amd64-openbsd

Copyright 1987-2016, Larry Wall
cperl Copyright (c) 2012,2014-2016, cPanel Inc

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

-bash-4.4$ cpan

cpan shell -- CPAN exploration and modules installation (v2.1801)
Enter 'h' for help.

cpan[1]> install Marpa::R2
Database was generated on Wed, 21 Feb 2018 14:27:17 GMT

Running install for module 'Marpa::R2'
Checksum for /minicpan/authors/id/J/JK/JKEGL/Marpa-R2-4.000000.tar.gz ok
Scanning cache /mnt/cpan_build_dir/vegeta for sizes
............................................................................DONE
  JKEGL/Marpa-R2-4.000000.tar.gz
  [configure_requires] -- NOT OK

From here I exited the cpan client and tried it manually:

-bash-4.4$ cd /mnt/cpan_build_dir/vegeta/Marpa-R2-4.000000-1
-bash-4.4$ perl Build.PL
Using Config::AutoConf
Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'Marpa-R2' version '4.000000'
-bash-4.4$ ./Build
Using Config::AutoConf
Building Marpa-R2
Writing version files
Checking inline... Checking for cc... cc
yes
Checking for size of int... Checking for cc... cc
4
Checking for stdlib.h... yes
Checking for stdarg.h... yes
Checking for string.h... yes
Checking for float.h... yes
Checking for assert.h... yes
Checking for ctype.h... yes
Checking for errno.h... yes
Checking for limits.h... yes
Checking for locale.h... yes
Checking for math.h... yes
Checking for setjmp.h... yes
Checking for signal.h... yes
Checking for stddef.h... yes
Checking for stdio.h... yes
Checking for time.h... yes
Checking for stdlib.h... (cached) yes
Checking for stdarg.h... (cached) yes
Checking for string.h... (cached) yes
Checking for float.h... (cached) yes
Checking for assert.h... (cached) yes
Checking for ctype.h... (cached) yes
Checking for errno.h... (cached) yes
Checking for limits.h... (cached) yes
Checking for locale.h... (cached) yes
Checking for math.h... (cached) yes
Checking for setjmp.h... (cached) yes
Checking for signal.h... (cached) yes
Checking for stddef.h... (cached) yes
Checking for stdio.h... (cached) yes
Checking for time.h... (cached) yes
Checking for sys/types.h... yes
Checking for sys/stat.h... yes
Checking for memory.h... yes
Checking for strings.h... yes
Checking for inttypes.h... yes
Checking for stdint.h... yes
Checking for unistd.h... yes
Running [/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl Makefile.PL]...
Generating a Unix-style Makefile
Writing Makefile for libmarpa
Writing MYMETA.yml and MYMETA.json
Running [make]...
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa_ami.c
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa_avl.c
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa.c
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa_codes.c
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa_obs.c
cc -c    -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2    -DVERSION=\"8.6.0\"  -DXS_VERSION=\"8.6.0\" -DPIC -fPIC  "-I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE"   marpa_tavl.c
rm -f "./blib/arch/auto/libmarpa/libmarpa.a"
/usr/bin/ar cr "./blib/arch/auto/libmarpa/libmarpa.a" marpa_ami.o marpa_avl.o marpa.o marpa_codes.o marpa_obs.o marpa_tavl.o
: "./blib/arch/auto/libmarpa/libmarpa.a"
chmod 755 ./blib/arch/auto/libmarpa/libmarpa.a
cc -I/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/CORE -DVERSION="4.000000" -DXS_VERSION="4.000000" -DPIC -fPIC -c -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -I /mnt/cpan_build_dir/vegeta/Marpa-R2-4.000000-1/libmarpa_build -I xs -Wall -W -Wpointer-arith -Wstrict-prototypes -Wwrite-strings -Wmissing-declarations -ansi -O2 -o lib/Marpa/R2.o lib/Marpa/R2.c
lib/Marpa/R2.xs:1197:16: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
  new_perl_pos = new_perl_pos;
  ~~~~~~~~~~~~ ^ ~~~~~~~~~~~~
lib/Marpa/R2.xs:1199:15: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
  new_end_pos = new_end_pos;
  ~~~~~~~~~~~ ^ ~~~~~~~~~~~
2 warnings generated.
Using built-in Libmarpa
ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/Marpa/R2/R2.bs')
cc -shared -fPIC -L/usr/local/lib -fstack-protector-strong -o blib/arch/auto/Marpa/R2/R2.so lib/Marpa/R2.o /mnt/cpan_build_dir/vegeta/Marpa-R2-4.000000-1/libmarpa_build/blib/arch/auto/libmarpa/libmarpa.a
-bash-4.4$ ./Build test
Using Config::AutoConf
Using built-in Libmarpa
t/00-load.t ............ 1/4 # Marpa::R2 version is 4.000000
# Libmarpa version is 8.6.0
# Libmarpa tag: Feb 21 2018 19:05:48
t/00-load.t ............ ok
t/ah2.t ................ ok
t/ah_numeric.t ......... ok
t/asf_syn.t ............ ok
t/balanced.t ........... ok
t/bocage.t ............. ok
t/catalan.t ............ ok
t/chaf.t ............... ok
t/code_diag.t .......... ok
t/context.t ............ ok
t/counter.t ............ ok
t/curly.t .............. ok
t/curly2.t ............. ok
t/debug.t .............. ok
t/debug_leo.t .......... ok
t/debug_seq.t .......... ok
t/deprecated1.t ........ ok
t/dsl.t ................ ok
t/duplicate_parse.t .... ok
t/equation.t ........... ok
t/final_nonnullable.t .. ok
t/gabend.t ............. ok
t/implementation.t ..... ok
t/infinite.t ........... ok
t/infinite2.t .......... ok
t/infinite_plex.t ...... ok
t/initial_nulls.t ...... ok
t/jirotka.t ............ ok
t/leo.t ................ ok
t/leo2.t ............... ok
t/leo3.t ............... ok
t/leo_cycle.t .......... ok
t/leo_example.t ........ ok
t/leo_unit.t ........... ok
t/limits.t ............. ok
t/minus.t .............. ok
t/naif.t ............... ok
t/null_example.t ....... ok
t/null_infinite1.t ..... ok
t/null_infinite4.t ..... ok
t/null_value.t ......... ok
t/pascal.t ............. ok
t/perl.t ............... ok
t/progress1.t .......... ok
t/progress2.t .......... ok
t/rabend.t ............. ok
t/randal.t ............. ok
t/rewrite.t ............ ok
t/sequence.t ........... ok
t/sequence2.t .......... ok
t/sl_action.t .......... ok
t/sl_action2.t ......... ok
t/sl_advent.t .......... ok
t/sl_ah2.t ............. ok
t/sl_ambig.t ........... ok
t/sl_amon.t ............ ok
t/sl_asf.t ............. ok
t/sl_ast.t ............. ok
t/sl_astsyn.t .......... ok
t/sl_bracket.t ......... ok
t/sl_calc.t ............ ok
t/sl_completed.t ....... ok
t/sl_debug.t ........... ok
t/sl_diag.t ............ ok
t/sl_discard.t ......... ok
t/sl_discard2.t ........ ok
t/sl_discard3.t ........ ok
t/sl_dsl.t ............. ok
t/sl_durand.t .......... ok
t/sl_dyck.t ............ ok
t/sl_event.t ........... ok
t/sl_evinit.t .......... ok
t/sl_evsyn.t ........... ok
t/sl_evsyn2.t .......... ok
t/sl_exhaust.t ......... ok
t/sl_external1.t ....... ok
t/sl_fullsyn.t ......... ok
t/sl_gia.t ............. ok
t/sl_gia_err.t ......... ok
t/sl_gie.t ............. ok
t/sl_gif1.t ............ ok
t/sl_gires.t ........... ok
t/sl_gsyn.t ............ ok
t/sl_incremental.t ..... ok
t/sl_json.t ............ ok
t/sl_json_ast.t ........ ok
t/sl_latk.t ............ ok
t/sl_lc.t .............. ok
t/sl_leo.t ............. ok
t/sl_leo2.t ............ ok
t/sl_lexevent.t ........ ok
t/sl_null_example.t .... ok
t/sl_numeric.t ......... ok
t/sl_panda.t ........... ok
t/sl_panda1.t .......... ok
t/sl_pascal.t .......... ok
t/sl_prefix.t .......... ok
t/sl_rank.t ............ ok
t/sl_ruby.t ............ ok
t/sl_salad.t ........... ok
t/sl_syn.t ............. ok
t/sl_taint.t ........... ok
t/sl_timeflies.t ....... ok
t/sl_topsyn.t .......... ok
t/sl_tut2.t ............ ok
t/sl_wall.t ............ ok
t/stuifzand.t .......... ok
t/syn_engine.t ......... ok
t/syn_stuifzand.t ...... ok
t/thin_deprec.t ........ ok
t/thin_eq.t ............ ok
t/timeflies.t .......... ok
t/use.t ................ ok
html/t/00-load.t ....... 1/1 # Using Marpa::R2::HTML 4
# Using Marpa::R2 4 2018-02-21T19:05:44
html/t/00-load.t ....... ok
html/t/cfg_fmt.t ....... ok
html/t/config.t ........ ok
html/t/copy.t .......... ok
html/t/examples.t ...... ok
html/t/fmt.t ........... ok
html/t/missing.t ....... ok
html/t/parse.t ......... ok
html/t/score.t ......... ok
html/t/synopsis.t ...... ok
html/t/tang.t .......... ok
All tests successful.
Files=124, Tests=1562, 50 wallclock secs ( 0.42 usr  1.68 sys + 32.65 cusr  8.61 csys = 43.36 CPU)
Result: PASS
-bash-4.4$ ./Build install
Using Config::AutoConf
Building Marpa-R2
Using built-in Libmarpa
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/auto/Marpa/R2/R2.bs
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/auto/Marpa/R2/R2.so
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/ASF.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Grammar.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Installed.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Internal.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/MetaAST.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/MetaG.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Recognizer.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/SLG.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/SLR.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Stuifzand.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Value.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Version.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/html_fmt.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/html_score.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/ASF.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Acknowledgements.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/BNF.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Changes.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Event.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Exhaustion.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Glade.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Progress.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Scanless.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Semantics.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Support.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Tracing.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Tutorial2.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Vocabulary.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Callback.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Config.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Internal.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Config/Compile.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Config/Core.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/HTML/Config/Default.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Thin/Trace.pm
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Advanced/Bibliography.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Advanced/Models.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Advanced/Thin.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Grammar.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Progress.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Recognizer.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Semantics.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Tracing.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Semantics/Infinite.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Semantics/Null.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Semantics/Order.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/NAIF/Semantics/Phases.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Scanless/DSL.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Scanless/G.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Scanless/R.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Semantics/Null.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Semantics/Order.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/OpenBSD.amd64-openbsd/Marpa/R2/Semantics/Phases.pod
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/marpa_r2_html_fmt
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/marpa_r2_html_score
-bash-4.4$ cpan

cpan shell -- CPAN exploration and modules installation (v2.1801)
Enter 'h' for help.

                                                                                                                                                                                                     cpan[1]> install MarpaX::Simple
Database was generated on Wed, 21 Feb 2018 14:27:17 GMT

Running install for module 'MarpaX::Simple'
Checksum for /minicpan/authors/id/P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz ok
Scanning cache /mnt/cpan_build_dir/vegeta for sizes
............................................................................DONE
Configuring P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for MarpaX::Simple
Writing MYMETA.yml and MYMETA.json
(/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl Makefile.PL exited with 0)
CPAN::Reporter: Makefile.PL result is 'pass', No errors.
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl Makefile.PL -- OK
Running make for P/PE/PERLANCAR/MarpaX-Simple-0.07.tar.gz
cp lib/MarpaX/Simple.pm blib/lib/MarpaX/Simple.pm
(/usr/bin/make exited with 0)
CPAN::Reporter: make result is 'pass', No errors.
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  /usr/bin/make -- OK
Running make test
PERL_DL_NONLAZY=1 "/home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/bin/cperl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ........... ok
t/author-pod-coverage.t .. skipped: these tests are for testing by the author
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
t/release-rinci.t ........ skipped: these tests are for release candidate testing
All tests successful.
Files=4, Tests=1,  0 wallclock secs ( 0.04 usr  0.02 sys +  0.20 cusr  0.19 csys =  0.45 CPU)
Result: PASS
(/usr/bin/make test exited with 0)
CPAN::Reporter: Test result is 'pass', All tests successful.
CPAN::Reporter: preparing a CPAN Testers report for MarpaX-Simple-0.07
CPAN::Reporter: sending test report with 'pass' via Socket
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  /usr/bin/make test -- OK
Running make install
Installing /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/site_cperl/5.24.3/MarpaX/Simple.pm
Appending installation info to /home/vegeta/perl5/perlbrew/perls/cperl-5.24.3/lib/5.24.3/OpenBSD.amd64-openbsd/perllocal.pod
  PERLANCAR/MarpaX-Simple-0.07.tar.gz
  /usr/bin/make install  -- OK

                                                                                                                                                                                              cpan[2]> test Marpa::R2
Running test for module 'Marpa::R2'
Checksum for /minicpan/authors/id/J/JK/JKEGL/Marpa-R2-4.000000.tar.gz ok
  JKEGL/Marpa-R2-4.000000.tar.gz
  [configure_requires] -- NOT OK
@jeffreykegler
Copy link
Owner

I think is most likely a problem with MarpaX::Simple or cpan

@jeffreykegler
Copy link
Owner

@perlancar -- Any insight on this one? It seems to involve MarpaX::Simple.

@glasswalk3r
Copy link
Author

Hi @jeffreykegler , I don't think so there is anything related to MarpaX::Simple: I couldn't install or even test Marpa::R2 inside the cpan client, although it works fine with perl Makefile.PL;make;make test;make install. And it seems to be specific with cperl.

@jeffreykegler
Copy link
Owner

I'm giving it a 2nd look. I'm currently moving from California to Virginia, so I hope you'll forgive some delay.

@jeffreykegler
Copy link
Owner

I asked about this on my IRC channel https://irclog.perlgeek.de/marpa/2018-02-28#i_15866306

My comments there:
It looks to me like a problem with cpan (or parallel makes?)
There is a warning message from 2 useless lines of code in R2.xs, but I don't think they are causing any issues.

@latk
Copy link
Contributor

latk commented Feb 28, 2018

There are a few variables here:

  • whether Marpa::R2 is installed via the cpan client or via make install
  • which perl is used
  • which operating system is used

Whether MarpaX::Simple is involved seems to be irrelevant, as far as I can see from the log.

So far, only the installation method has been varied, and has shown that manual installation seems to work while installation via cpan does not. This indicates (but does not prove!) that either cpan is doing something iffy, or that the Marpa::R2 Makefile doesn't conform to cpan's expectations. For example, Marpa might be installing itself into a wrong directory.

Much more notable, the failing installation has only been demonstrated with the cperl fork (http://perl11.org/cperl/), NOT with a standard perl. Using cperl is the most unusual part of this whole setup, and should be investigated first.

  • Can this problem be reproduced under a real perl-5.24, but otherwise using the same setup?
  • Can other complex XS modules be installed without problems under this cperl–cpan–perlbrew– OpenBSD configuration?

I find it likely that cperl's cpan client and not the Marpa installation process is the cause of these problems, because
(a) rurban finds it necessary to maintain a collection of cperl-compatibility patches for various modules, and
(b) Marpa::R2 is very well-tested software that has been shown to work under a large variety of setups.

If this issue is specific to cperl, that would by definition be a cperl bug. Or would the Marpa project even be interested in supporting the cperl fork? I'd argue this should be a non-goal, as large parts of the CPAN infrastructure incl. cpantesters do not support perl forks either.

@glasswalk3r
Copy link
Author

Can this problem be reproduced under a real perl-5.24, but otherwise using the same setup?

Not really. There are a couple of tests from me available (just filter them by OpenBSD) and you will see that Marpa::R2 pass all tests on "standard" perls. See here to check them out.

Can other complex XS modules be installed without problems under this cperl–cpan–perlbrew– OpenBSD configuration?

I'm not sure how to categorize distributions, but I guess you could check some results for some of those distributions and how they fare in OpenBSD.

But taking a look at the filter on CPAN Testers website, I don't see any option as "cperl-*" to filter the reports. Not sure if cperl is just not being considered over there.

@jeffreykegler
Copy link
Owner

If the problem cannot be reproduced except in a cperl environment, I'm inclined to close it as "Cannot duplicate".

But also, does your environment use a parallel make? Some BSD's run parallel make by default. This is a disaster with Marpa::R2's makefiles, which cannot be run in parallel.

@glasswalk3r
Copy link
Author

@jeffreykegler , no, all configuration regarding parallel making is disabled at the configuration of cpan client.
I'll double check if a "regular" perl (probably 5.10) works fine with the current setup, and if everything goes as expected I guess we can drop this off.

@glasswalk3r
Copy link
Author

Guys, I tried with perl 5.10.1 (see here) and all tests passed. I guess that is safe to assume that the issue goes with "cperl" itself, so probably you may want to mark the distribution to be incompatible to this alternative perl.

@jeffreykegler
Copy link
Owner

Two things to do before I close:
1.) Fix the two useless statement warnings.
2.) Modify the UPDATES page to state that cperl is not supported and not known to work.

@jeffreykegler jeffreykegler self-assigned this Mar 14, 2018
@jeffreykegler
Copy link
Owner

Fixed useless statement warnings in commit c458bec. It remains to change the UPDATES page.

@jddurand
Copy link
Contributor

And if cperl gets a fix so that installing Marpa works -; @glasswalk3r, have you contacted cperl ?

@jeffreykegler
Copy link
Owner

Added caveat re Perl variants to UPDATES.md: commit 82a3542

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants