Open savagezen opened 8 years ago
@ptahpeteh :
sudo
to make DESTDIR="$pkgdir" install
compiles, builds, and installs everything :+1: though it takes a hot minuterakudo-star*.pkg.tar.xz
.rakudo-star
panda, perl6, etc... still exist in /usr/bin
@gtbjj: Prepending sudo to make install doesn't help. I still have:
== Installing modules for MoarVM
cd modules/panda && /home/rafalp/pkgs/rakudo-star/pkg/rakudo-star/usr/bin/perl6-m bootstrap.pl
Unhandled exception: While looking for '/usr/share/perl6/runtime/perl6.moarvm': no such file or directory
Makefile:65: recipe for target 'modules-install-m' failed
make: *** [modules-install-m] Error 1
==> ERROR: A failure occurred in package().
Aborting...
I tried to do some patching but with no success. I edited perl6-m
from build directory to correct libpaths (originally libpaths pointed to /usr/share/perl6
which at this stage is empty). But then I got:
== Installing modules for MoarVM
cd modules/panda && /home/rafalp/pkg/rakudo-star/perl6 bootstrap.pl --prefix=/usr/share/perl6
Unhandled exception: Cannot call method 'load_setting' on a null object
at <unknown>:1 (/home/rafalp/pkg/rakudo-star/pkg/rakudo-star/usr/share/nqp/lib/Perl6 /ModuleLoader.moarvm:<dependencies+deserialize>:12)
from <unknown>:1 (/home/rafalp/pkg/rakudo-star/pkg/rakudo-star/usr/share/perl6/runtime/perl6.moarvm:<dependencies+deserialize>:6)
Makefile:67: recipe for target 'modules-install-m' failed
Then I tried to install rakudo
before installing rakudo-star
(so that perl6
is already there at /usr/bin
when rakudo-star
installs modules). But again failed:
==> Bootstrapping Panda
Earlier failures:
Failed to open file /usr/share/perl6/site/panda/projects.json: permission denied
in any at /usr/share/perl6/runtime/CORE.setting.moarvm line 1
in sub MAIN at bootstrap.pl line 50
in block <unit> at bootstrap.pl line 8
Final error:
Cannot call say(Failure: Str); none of these signatures match:
(Mu $: *%_)
in sub MAIN at bootstrap.pl line 51
in block <unit> at bootstrap.pl line 8
However after adding sudo as you suggested the build goes farther till making package but it doesn't have any modules only perl6
inside.
I'm starting to think that it's not possible to package panda
and other modules. Building from source panda
installs itself in user home directory ~/.perl6
and not in /usr
. Which is weird and I don't know how makepkg would handle this.
Maybe it'd be better to make rakudo-star
sort of meta-package? So it depends on rakudo
and all other modules. But as of now you can't install panda
from aur because of broken dependency...
@ptahpeteh :
You're right, it wasn't the sudo
that worked. I forgot that I had installed rakudobrew
as a backup. So, along the same lines as installing rakudo
first, but for me things seemed to work okay except where I noted before.
The meta-package might work. In the AUR panda
has a dependency of perl6-panda
(which installed fine for me after rakudo
). Not sure if the separate package would be worth it when you can install the star
module(s) via $ panda install Task::Star
@gtbjj:
One more question. Do you get usable panda
after installing perl6-panda
? Mine reports an error when I try to install Task::Star
:
Found no writable directory into which panda could be installed
Sudo does not help.
Yes, I got a usable panda
that installed Task::Star
from what I can tell. I pulled down the latest rakudo-star tarball, untar'd it the, ran panda
from inside.
UPDATE: This issue still persists. I've tracked it down to Makefile:66 which references Makefile:15 where STAR_BIN_DIR
is declared. The issues is that in building the package we want PREFIX_DIR
to be /usr
, but need to look for the install binaries (exclusive to Rakudo Star variant) in $srcdir/$pkgname-$pkgver"/rakudo/
Rakudo Star
gtbjj :
ptahpeteh: