[MacPorts] #62655: rust @1.51.0_1 fails to build under macOS 11.2.3 :info:destroot = note: Undefined symbols for architecture arm64

MacPorts noreply at macports.org
Wed Apr 21 16:28:53 UTC 2021


#62655: rust @1.51.0_1 fails to build under macOS 11.2.3 :info:destroot   = note:
Undefined symbols for architecture arm64
---------------------+----------------------
  Reporter:  ehjmx   |      Owner:  g5pw
      Type:  defect  |     Status:  assigned
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:  2.6.4
Resolution:          |   Keywords:  big sur
      Port:  rust    |
---------------------+----------------------

Comment (by herbygillot):

 Replying to [comment:19 ehjmx]:
 > Replying to [comment:17 herbygillot]:
 > > According to your log file, the problem you're having is in compiling
 `rls`; Rust itself (`rustc`) and its standard library have built just
 fine.
 > >
 > > `rls` requires OpenSSL, but on your system for some reason, it's also
 looking for symbols in `libssh2`.
 > > I don't know why, but perhaps it may have to do with custom variants
 you've set while installing ports on your system.
 > >
 > > I would first try to rebuild `libssh2` from scratch.
 > >
 > > {{{
 > > sudo port uninstall libssh2
 > > sudo port build libssh2
 > > sudo port install libssh2
 > > }}}
 > >
 > > The ideal thing afterwards would be to rebuild `openssl` as well.
 >
 > I did as suggested and did the same three steps for openssl. Still
 building rls fails. As I don't see any difference in the main log before
 and after doing the rebuilds should I still attach it?
 >
 > What baffles me is, that after I did a
 >
 > {{{
 > sudo port clean rust
 > }}}
 >
 > today during the
 > {{{
 > sudo port upgrade outdated
 > }}}
 >
 > rust, rustc 1.51 **and** rust, rustc, cargo 1.50 where downloaded
 >
 >
 > {{{
 > --->  Computing dependencies for rust
 > --->  Fetching archive for rust
 > --->  Attempting to fetch rust-1.51.0_1.darwin_20.arm64.tbz2 from
 https://packages.macports.org/rust
 > --->  Attempting to fetch rust-1.51.0_1.darwin_20.arm64.tbz2 from
 https://lil.fr.packages.macports.org/rust
 > --->  Attempting to fetch rust-1.51.0_1.darwin_20.arm64.tbz2 from
 https://cph.dk.packages.macports.org/rust
 > --->  Fetching distfiles for rust
 > --->  Attempting to fetch rustc-1.51.0-src.tar.gz from https://static
 .rust-lang.org/dist
 > --->  Attempting to fetch rust-std-1.50.0-aarch64-apple-darwin.tar.gz
 from https://static.rust-lang.org/dist
 > --->  Attempting to fetch rustc-1.50.0-aarch64-apple-darwin.tar.gz from
 https://static.rust-lang.org/dist
 > --->  Attempting to fetch cargo-1.50.0-aarch64-apple-darwin.tar.gz from
 https://static.rust-lang.org/dist
 > }}}
 >
 > There is definitly something weired with my macports installation which
 causes the build failure for rls.

 So this is working as expected.

 The way that Rust works, the previous release version is used to build the
 most recent release.

 So to build release **1.51.0**, version **1.50.0** is used.  The build is
 a multi-phase process where the most recent compiler and standard lib is
 built using the previous version, the the resulting compiler (latest
 release) is then in turn used to build the most recent standard lib and
 companion utilities.

-- 
Ticket URL: <https://trac.macports.org/ticket/62655#comment:20>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list