croservices / cro

Development tools for building services and distributed systems in Raku using the Cro libraries.
https://cro.services/
Artistic License 2.0
88 stars 35 forks source link

Can't run cro on Mac OS X #120

Closed coke closed 4 years ago

coke commented 4 years ago
$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.15.3
BuildVersion:   19D76
$ perl6 --version
This is Rakudo version 2020.05.1-104-g65e17c40e built on MoarVM version 2020.05
implementing Raku 6.d.
$ zef list --installed 2>/dev/null | grep -i cro
Cro::Core:ver<0.8.3>
Cro::HTTP:ver<0.8.3>
Cro::TLS:ver<0.8.3>
Cro::WebSocket:ver<0.8.3>
cro:ver<0.8.3>
$ cro
Abort trap: 6

I was able to install gdb via homebrew, but unable to get a backtrace on the Abort Trap (it reports that it exited normally) - it runs for some time before dying with the Abort trap.

coke commented 4 years ago

Any invocation of cro I've tried causes the error

lizmat commented 4 years ago

FWIW, I just tried this, and it looks like a Catalina issue.

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.6
BuildVersion:   18G4032
jnthn commented 4 years ago

@lizmat I'm assuming 10.14 is not Catalina, but whatever came before, and 10.15 is Catalina?

Given how much of a nuisance it was to offer Comma on Catalina, I'm not surprised it's a mess for other things too. :-(

jnthn commented 4 years ago

@coke Out of curiosity, if you make do soemthing like raku -e 'use Cro::HTTP::Server' does it work? Can you run a Cro app manually? Is it "just" the cro development tool that's broken?

coke commented 4 years ago

After about 13s, that also dies with an Abort Trap.

I don't have a Cro app at the moment, I started this process because I was trying to start one.

lizmat commented 4 years ago

10.14 is Mojave

lizmat commented 4 years ago

And don't get me started on Catalina: it basically broke all of my video / picture / audio workflow. And it made it clear Apple does not want me as a client anymore in the future.

coke commented 4 years ago

(Catalina vs. Mojave: https://github.com/coke/scripts/blob/master/sw_hist)

coke commented 4 years ago

https://medium.com/@micheleberardi/python-abort-trap-6-fix-after-catalina-update-c20fde9fe6d1 - suggests it's related to openssl library loading issues on 10.15/Catalina (I haven't been able to make it work yet, though)

coke commented 4 years ago

@vrurg provided a tip on using macports on OS X 10.15.

ln -s /opt/local/lib $HOME/lib
lizmat commented 4 years ago

Wouldn't that qualify as a workaround, rather than a fix to make Cro work out of the box? And as such is a not a solution worthy of closing this issue?

vrurg commented 4 years ago

@lizmat It depends on the location of rakudo installation. If it's about /opt/local/bin/rakudo having issues – then we do have a problem. But for rakubrew or any other kind of installation under $HOME this is the fix because this is how MacOS works with dynamic libraries.

coke commented 4 years ago

To followup on @vrurg's comment -This feels like it was a rakudo installation issue rather than a cro issue.

vrurg commented 4 years ago

One more note: this could be a problem with Catalania libssl. In this case I'd say if openssl from macports/homebrew fixes the problem then any fix for Catalania compatibility is a workaround. But it worth considering the fix to keep up to user expectations. Especially considering how slow Apple on fixing bugs unless they affect themselves directly.