Opened 5 years ago

Last modified 22 months ago

#50158 assigned submission

panda: get a functional installation

Reported by: mojca (Mojca Miklavec) Owned by: mojca (Mojca Miklavec)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: tadeusz.sosnierz@…
Port: panda

Description (last modified by mojca (Mojca Miklavec))

Now that rakudo is available, it would be nice to get panda working.

Most likely we will have to work with upstream developers to get the installer behave in the desired way. For example, the build ends up with

==> Please make sure that inst#/opt/local/var/macports/build/_path_to_perl_lang_panda/panda/work/.home/.perl6/2015.12/bin is in your PATH

Some relevant links about packaging:

Change History (7)

comment:1 Changed 5 years ago by mojca (Mojca Miklavec)

According to http://www.in-ulm.de/~mascheck/various/shebang/#interpreter-script we have to fix the shebang call to perl6. Having

#!/opt/local/bin/perl6

doesn't work.

comment:2 Changed 5 years ago by mojca (Mojca Miklavec)

One of the errors:

Found no writable directory into which panda could be installed
  in sub make-default-ecosystem at /opt/local/share/perl6/sources/310EA749D1E286A42C504F792C75260CCFC8D622 line 19
  in sub MAIN at /opt/local/share/perl6/resources/46803041638AB62A0C3E66A094A1C086A4332766 line 16
  in block <unit> at /opt/local/share/perl6/resources/46803041638AB62A0C3E66A094A1C086A4332766 line 150

See:

The problem is in this line:

try mkpath $pandadir unless $pandadir ~~ :d;

in lib/Panda/App.p.

comment:3 Changed 5 years ago by mojca (Mojca Miklavec)

I committed r144009, even though I'm not 100% satisfied with it yet.

But you can now run

panda install Task::Star

which will put files under $HOME/.perl6/2015.12/panda.

It now fails while building Linenoise:

==> Fetching Linenoise
==> Building Linenoise
===SORRY!===
P6M Merging GLOBAL symbols failed: duplicate definition of symbol Panda

Next time try to use

RAKUDO_MODULE_DEBUG=1

to get more debug output.

Last edited 5 years ago by mojca (Mojca Miklavec) (previous) (diff)

comment:4 Changed 5 years ago by mojca (Mojca Miklavec)

And on 10.6 it fails with:

==> Testing File::Find
Unknown option: e
Unknown option: norc
test stage failed for File::Find: Tests failed
  in method install at /opt/local/var/macports/build/_opt_mports_dports_lang_panda/panda/work/panda-2015.12/lib/Panda.pm line 142
  in block  at /opt/local/var/macports/build/_opt_mports_dports_lang_panda/panda/work/panda-2015.12/lib/Panda.pm line 214
  in method resolve at /opt/local/var/macports/build/_opt_mports_dports_lang_panda/panda/work/panda-2015.12/lib/Panda.pm line 208
  in sub MAIN at bin/panda line 18
  in block <unit> at bin/panda line 150


Failure Summary
----------------
/opt/local/var/macports/build/_opt_mports_dports_lang_panda/panda/work/panda-2015.12(
	*test stage failed for File::Find: Tests failed)
The spawned process exited unsuccessfully (exit code: 1)
  in sub MAIN at bootstrap.pl line 65
  in block <unit> at bootstrap.pl line 7

Command failed:  cd "/opt/local/var/macports/build/_opt_mports_dports_lang_panda/panda/work/panda-2015.12" && /opt/local/bin/perl6 bootstrap.pl --prefix=/opt/local 
Exit code: 1

See also #50957.

Last edited 5 years ago by mojca (Mojca Miklavec) (previous) (diff)

comment:5 Changed 5 years ago by mojca (Mojca Miklavec)

Cc: tadeusz.sosnierz@… added

Will, I need some further help with Panda. See the following:

$ panda install Readline
[...]
==> Installing JSON::Fast
==> Successfully installed JSON::Fast
==> Fetching panda
==> Building panda
==> Testing panda
t/builder.t .... ok
t/common.t ..... ok
t/ecosystem.t .. ok
Copying lib/bar.pod to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/bar.pod
Copying lib/baz.js to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/baz.js
Copying lib/foo.jar to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/foo.jar
Copying lib/foo.pir to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/foo.pir
Copying lib/foo.pm to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/foo.pm
Copying lib/foo.moarvm to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/lib/foo.moarvm
Copying bin/bar to /Users/me/macports/perl/lang/rakudo/.panda-work/1454408606_5/removeme/bin/bar
t/installer.t .. ok
t/tester.t ..... ok
All tests successful.

This is an absolutely undesired behaviour of Panda. All the files should go to $HOME/.perl6/2016.01 instead of the random directory that was initially used to build rakudo and has already disappeared by the time I ran panda.

Later on I get a lot of other problems:

==> Fetching Readline
==> Building Readline
==> Testing Readline
t/01-load.t .. ok

# Failed test 'initialize'
# at t/02-base.t line 10
# Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    
# Failed test 'macro-dumper lives'
# at t/02-base.t line 18
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    # Looks like you failed 1 test of 1

# Failed test 'dumpers'
# at t/02-base.t line 13
    
# Failed test 'set-prompt lives'
# at t/02-base.t line 27
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    
# Failed test 'expand-prompt lives'
# at t/02-base.t line 29
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    
# Failed test 'on-new-line-with-prompt lives'
# at t/02-base.t line 31
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    
# Failed test 'save-prompt lives'
# at t/02-base.t line 33
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    
# Failed test 'restore-prompt lives'
# at t/02-base.t line 35
    # Cannot locate native library 'libreadline.so.6': dlopen(libreadline.so.6, 1): image not found
    # Looks like you failed 5 tests of 5

# Failed test 'prompt'
# at t/02-base.t line 24
    
[...]

These are the files that come with readline:

  /opt/local/lib/libreadline.6.2.dylib
  /opt/local/lib/libreadline.6.3.dylib
  /opt/local/lib/libreadline.6.dylib
  /opt/local/lib/libreadline.a
  /opt/local/lib/libreadline.dylib

No *.so files are present.

Last edited 5 years ago by mojca (Mojca Miklavec) (previous) (diff)

comment:6 Changed 5 years ago by mojca (Mojca Miklavec)

Description: modified (diff)

comment:7 Changed 22 months ago by mf2k (Frank Schima)

Cc: coke removed
Owner: changed from macports-tickets@… to mojca
Status: newassigned
Note: See TracTickets for help on using tickets.