Opened 6 years ago

Closed 3 years ago

#56281 closed defect (fixed)

MacOS 10.13.4 : Cargo port build failure about SSL and github

Reported by: cgilles (HumanDynamo) Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: cargo

Description

--->  Building cargo
Error: Failed to build cargo: command execution failed
Error: See /opt/digikam/var/macports/logs/_opt_digikam_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_devel_cargo/cargo/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Error: Processing of port sane-backends failed
FAILED COMMAND: port install cmake libpng jpeg tiff boost eigen3 gettext libusb libgphoto2 jasper lcms2 expat libxml2 libxslt libical lensfun bison sane-backends qt59 qt59-qtimageformats qt59-qtwebkit qt59-sqlite-plugin qt59-mysql-plugin qt59-qtscript wget +ssl
bash-3.2$ 

Attachments (1)

main.log (128.2 KB) - added by cgilles (HumanDynamo) 6 years ago.
Cargo build log file

Download all attachments as: .zip

Change History (9)

Changed 6 years ago by cgilles (HumanDynamo)

Attachment: main.log added

Cargo build log file

comment:1 Changed 6 years ago by cgilles (HumanDynamo)

Summary: MacOS 10.13.4 : Cargo port build faildMacOS 10.13.4 : Cargo port build failure about SSL and github

comment:2 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

It is a bug that cargo is trying to do any fetching at all outside of the fetch phase. See #56195. Fixing that bug is all we need to do to solve this problem.

comment:3 Changed 6 years ago by raimue (Rainer Müller)

No, this is a different problem. Yes, #56195 will solve it for the cargo port, but this is still a bug in cargo itself. Remember cargo can be used for development and not only for building ports. That this bug triggers in a port build is just a coincidence.

:info:build     Updating registry `https://github.com/rust-lang/crates.io-index`
:info:build error: failed to load source for a dependency on `atty`
:info:build Caused by:
:info:build   Unable to update registry `https://github.com/rust-lang/crates.io-index`
:info:build Caused by:
:info:build   failed to fetch `https://github.com/rust-lang/crates.io-index`
:info:build Caused by:
:info:build   [16/-1] unexpected return value from ssl handshake -9808

cargo includes a bundled copy of libgit2. Therefore this problem could be the same as in this upstream issue: https://github.com/libgit2/libgit2/issues/4350

I recommend to report the problem to cargo upstream.

comment:4 Changed 6 years ago by cbean

Same issue on 10.12.6:

:info:build error: failed to load source for a dependency on `atty`
:info:build Caused by:
:info:build   Unable to update registry `https://github.com/rust-lang/crates.io-index`
:info:build Caused by:
:info:build   failed to fetch `https://github.com/rust-lang/crates.io-index`
:info:build Caused by:
:info:build   [12/-2] [35] SSL connect error (SSL certificate problem: Couldn't understand the server certificate format)
:info:build Exit code: 101

comment:5 Changed 6 years ago by cbean

Not sure if this helps, but it helped me:

  1. backed up the list of all ports
  2. port -f uninstall installed
  3. installedmacports 2.4.3 freshly from source
  4. re-installed all previously installed ports

-> cargo built on two machines now

Version 0, edited 6 years ago by cbean (next)

comment:6 Changed 6 years ago by jmroot (Joshua Root)

Port: cargo added

comment:7 Changed 6 years ago by cgilles (HumanDynamo)

Confirmed. To re-init whole Port installation and to rebuild all from scratch fix the problem. Now Cargo build when installing ffmpeg work as expected :

--->  Fetching distfiles for rust
--->  Attempting to fetch rustc-1.25.0-src.tar.gz from https://static.rust-lang.org/dist
--->  Attempting to fetch rust-std-1.24.0-x86_64-apple-darwin.tar.gz from https://static.rust-lang.org/dist
--->  Attempting to fetch rustc-1.24.0-x86_64-apple-darwin.tar.gz from https://static.rust-lang.org/dist
--->  Attempting to fetch cargo-0.25.0-x86_64-apple-darwin.tar.gz from https://static.rust-lang.org/dist
--->  Verifying checksums for rust
--->  Extracting rust
--->  Applying patches to rust
--->  Configuring rust
--->  Building rust
--->  Staging rust into destroot
--->  Installing rust @1.25.0_0
--->  Activating rust @1.25.0_0
--->  Cleaning rust
--->  Fetching distfiles for cargo
--->  Attempting to fetch cargo-0.25.0.tar.gz from https://distfiles.macports.org/cargo
--->  Attempting to fetch cargo-0.24.0-x86_64-apple-darwin.tar.gz from https://static.rust-lang.org/dist/
--->  Verifying checksums for cargo
--->  Extracting cargo
--->  Applying patches to cargo
--->  Configuring cargo
--->  Building cargo
--->  Staging cargo into destroot
--->  Installing cargo @0.25.0_0
--->  Activating cargo @0.25.0_0
--->  Cleaning cargo

So, this file can be closed now...

comment:8 in reply to:  3 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

Replying to raimue:

cargo includes a bundled copy of libgit2. Therefore this problem could be the same as in this upstream issue: https://github.com/libgit2/libgit2/issues/4350

That libgit2 issue has been closed presumed fixed, though without mentioning what the fix was or in what version of libgit2 the fix was released. Given the above comments that the problem no longer appears in MacPorts cargo, I will presume that this is fixed for us too.

Note: See TracTickets for help on using tickets.