Skip to content

Build the standard library for an unsupported target #3

Open
@ehuss

Description

This is a "use case" issue to try to clarify and discuss a use case, and how it will be addressed.

Building a project for a target that is not available in the Rust distribution can be challenging currently. Some use tools like cargo-xbuild or xargo, or forking rust itself. One of the goals of "std-aware Cargo" is to make this process a little easier.

Many use cases for this are for no_std environments, and use .json target specifications to specify the environment.

Cargo already supports .json targets, and most of the work for supporting #2 should enable this for basic usage.

However, from a higher level this use case has some other issues:

  • Building no_std binaries often require nightly-only features. (TODO: list which are important).
  • The core library is not always maximally portable. It might be good to explore Standard library portability to figure out what needs there are to make it more portable.
  • Bringing up std on a new platform that does not conform to an existing one can be difficult. This might be another area to explore how to lower the difficulty.

Metadata

Assignees

No one assigned

    Labels

    use caseDiscussion on a high-level use case

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions