Skip to content

Linking liblibc using musl target fails ("unrecognized relocation") with the new nightlies #39979

Closed

Description

Here's a dockerized test case: https://github.com/golddranks/libc_regression_test/ (run with docker build .)

Here's the error:

  = note: /usr/bin/ld: /root/.rustup/toolchains/nightly-2017-02-19-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-musl/lib/liblibc-95af4192ed69a1c8.rlib(exit.lo): unrecognized relocation (0x2a) in section `.text.libc_exit_fini'
          /usr/bin/ld: final link failed: Bad value
          collect2: error: ld returned 1 exit status

The linking error seems to happen only with the musl target. I originally posted this as rust-lang/libc#529, but because the breaking is dependent on the nightly, it seems that this is an rustc issue rather than an issue of the libc crate.

After testing with various nightlies, it seems that the nightly nightly-2017-02-16 installed - rustc 1.17.0-nightly (62eb6056d 2017-02-15) is the first one that breaks. The nightly before that, nightly-2017-02-13 installed - rustc 1.17.0-nightly (956e2bcba 2017-02-12) is the last one that works.

So that seems to imply that the commit that introduced this regression is in the range 956e2bcba..62eb6056d. Any thoughts about which one it might be?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    A-linkageArea: linking into static, shared libraries and binariesregression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions