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

zef install API::Discord failed on Apple M1 MacBook #54

Open
deadshot465 opened this issue Apr 4, 2021 · 2 comments
Open

zef install API::Discord failed on Apple M1 MacBook #54

deadshot465 opened this issue Apr 4, 2021 · 2 comments

Comments

@deadshot465
Copy link

Rakudo now already has a Apple Silicon formula on Homebrew, Zef also compiles without any problem, and running a simple Hello World Raku program also has no problem at all on Apple M1. However, when I tried to run zef install API::Discord, the following error message appeared:

===> Searching for: API::Discord
===> Updating fez mirror: http://360.zef.pm/
===> Updating cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Updating p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated fez mirror: http://360.zef.pm/
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Searching for missing dependencies: Cro::WebSocket, Data::Dump, Object::Delayed, URI::Encode, Subset::Helper, Test::META
===> Searching for missing dependencies: META6:ver<0.0.24+>, URI, License::SPDX, Test::Output, Object::Trampoline:ver<0.0.9>:auth<cpan:ELIZABETH>, Cro::HTTP, Base64, Digest::SHA1::Native, Crypt::Random, JSON::Fast, OO::Monitors
===> Searching for missing dependencies: JSON::Class:ver<0.0.15+>, JSON::Name, IO::Socket::Async::SSL, IO::Path::ChildSecure, HTTP::HPACK, Cro::Core, Cro::TLS, JSON::JWT, DateTime::Parse, Log::Timeline, if, InterceptAllMethods:ver<0.0.1>:auth<cpan:ELIZABETH>, LibraryMake, Shell::Command, JSON::Class:ver<0.0.14+>
===> Searching for missing dependencies: File::Which, File::Find, OpenSSL, JSON::Marshal:ver<0.0.20+>, JSON::Unmarshal:ver<0.08+>, MIME::Base64, Digest::HMAC
===> Searching for missing dependencies: Digest
===> Building: Digest::SHA1::Native:ver<0.04>
[Digest::SHA1::Native] ld: library not found for -ltommath
[Digest::SHA1::Native] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[Digest::SHA1::Native] make: *** [/Users/deadshot465/.zef/store/p6-digest-sha1-native.git/e34d468341a572a7c089d672429cf88d21e07734/resources/libraries/libsha1.dylib] Error 1
[Digest::SHA1::Native] The spawned command '/usr/bin/make' exited unsuccessfully (exit code: 2, signal: 0)
[Digest::SHA1::Native]   in method build at /Users/deadshot465/.zef/store/p6-digest-sha1-native.git/e34d468341a572a7c089d672429cf88d21e07734/Build.pm line 14
[Digest::SHA1::Native]   in block <unit> at -e line 1
===> Building [FAIL]: Digest::SHA1::Native:ver<0.04>
Aborting due to build failure: Digest::SHA1::Native:ver<0.04> (use --force-build to override)

However, libtommath has already been installed via Homebrew. I think it has something to do with Digest::SHA1::Native dependency rather than raku-api-discord, but is there a workaround for it?

@kawaii
Copy link
Member

kawaii commented Apr 4, 2021

I'm not at my laptop currently but I'll investigate this in a few hours. I have a feeling that some of the underlying dependencies for the Cro framework don't work on macOS yet though, as full Windows and macOS compatibility is planned for the 0.9 release of Cro.

@deadshot465
Copy link
Author

deadshot465 commented Apr 4, 2021

Thanks for the reply. I also tested on x86_64 MacBook, and it returns a different error message. If it helps:

===> Searching for: API::Discord
===> Updating fez mirror: http://360.zef.pm/
===> Updating cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Updating p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated fez mirror: http://360.zef.pm/
===> Updated p6c mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/p6c1.json
===> Updated cpan mirror: https://raw.githubusercontent.com/ugexe/Perl6-ecosystems/master/cpan1.json
===> Searching for missing dependencies: Cro::WebSocket, Data::Dump, Object::Delayed, URI::Encode, Subset::Helper, Test::META
===> Searching for missing dependencies: Cro::HTTP, Base64, Digest::SHA1::Native, Crypt::Random, JSON::Fast, OO::Monitors, META6:ver<0.0.24+>, URI, License::SPDX, Test::Output, Object::Trampoline:ver<0.0.9>:auth<cpan:ELIZABETH>
===> Searching for missing dependencies: JSON::Class:ver<0.0.15+>, JSON::Name, JSON::Class:ver<0.0.14+>, if, LibraryMake, Shell::Command, IO::Socket::Async::SSL, IO::Path::ChildSecure, HTTP::HPACK, Cro::Core, Cro::TLS, JSON::JWT, DateTime::Parse, Log::Timeline, InterceptAllMethods:ver<0.0.1>:auth<cpan:ELIZABETH>
===> Searching for missing dependencies: JSON::Marshal:ver<0.0.20+>, JSON::Unmarshal:ver<0.08+>, MIME::Base64, OpenSSL, Digest::HMAC, File::Which, File::Find
===> Searching for missing dependencies: Digest
===> Building: Digest::SHA1::Native:ver<0.04>
===> Building [OK] for Digest::SHA1::Native:ver<0.04>
===> Testing: OpenSSL:ver<0.1.23>
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
[OpenSSL] WARNING: /usr/local/Cellar/rakudo/2021.02.1/bin/rakudo-m is loading libcrypto in an unsafe way
===> Testing [FAIL]: OpenSSL:ver<0.1.23>
Aborting due to test failure: OpenSSL:ver<0.1.23> (use --force-test to override)

Looks like Digest::SHA1::Native doesn't support Apple M1 yet, but it fails in tests when on x86_64 MacBook.

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

2 participants