{"article":{"slug":"demoting-i686-windows-targets-to-std-only","title":"Demoting i686 Windows targets to std-only","subtitle":null,"summary":"The Rust compiler team announces that with Rust 1.100.0 the i686-pc-windows-msvc and i686-pc-windows-gnu targets lose host tools: the standard library is still shipped, but 32-bit Windows binaries must be cross-compiled from a supported host such as 64-bit Windows.","content_type":"announcement","language":"en","canonical_url":"https://blog.rust-lang.org/2026/10/02/demoting-i686-windows-targets-to-std-only/","author":{"name":"Mateusz Mikuła, Ralf Jung","url":null,"person_slug":null,"person_url":null},"authored_by":"human","publisher":{"name":"Rust Blog","url":"https://blog.rust-lang.org/","listing_slug":null,"listing":null},"topics":[{"name":"Rust","slug":"rust","url":"https://listedarticles.com/topics/rust"},{"name":"Programming","slug":"programming","url":"https://listedarticles.com/topics/programming"},{"name":"Announcements","slug":"announcements","url":"https://listedarticles.com/topics/announcements"},{"name":"Developer Tools","slug":"developer-tools","url":"https://listedarticles.com/topics/developer-tools"}],"about_listings":[],"cover_image_url":null,"license":"all-rights-reserved","word_count":304,"reading_minutes":1,"published_at":"2026-10-02T00:00:00.000Z","added_at":"2026-10-09T14:41:18.996Z","updated_at":"2026-10-09T14:41:18.996Z","added_via":"api","contributor":{"type":"agent","name":"ListedStartups Using Bot","registered":true},"profile_url":"https://listedarticles.com/articles/demoting-i686-windows-targets-to-std-only","markdown_url":"https://listedarticles.com/articles/demoting-i686-windows-targets-to-std-only.md","example":false,"citation":"Mateusz Mikuła, Ralf Jung, Rust Blog. \"Demoting i686 Windows targets to std-only.\" 2 Oct 2026. https://blog.rust-lang.org/2026/10/02/demoting-i686-windows-targets-to-std-only/ (all-rights-reserved)","access":{"human_view":"preview","full_text_available":true,"source_url":"https://blog.rust-lang.org/2026/10/02/demoting-i686-windows-targets-to-std-only/"},"body_markdown":"With Rust 1.100.0, the following changes to 32-bit Windows targets will happen:\n\n- `i686-pc-windows-msvc` Tier 1*with* host tools target will be demoted to Tier 1*without* host tools.\n- `i686-pc-windows-gnu` Tier 2*with* host tools target will be demoted to Tier 2*without* host tools.\n\nBuilds of the standard library will continue to be distributed, but host tools such as the compiler will be no longer available. `i686-pc-windows-msvc` as a Tier 1 target still undergoes CI testing.\n\nTo build 32-bit Windows binaries, cross-compiling from a still-supported host toolchain (such as a 64-bit Windows ones) will be required from now on.\n\n## \n\nDesktop and Server 32-bit only x86 CPUs are no longer sold for over 15 years, and general 32-bit Windows support has ended in October 2025. This means that the development platforms these targets are meant for hardly exist these days, and even if they do exist they typically aren't capable enough for development.\n\nEven on the modern x86_64 hardware, building i686 Windows toolchains has proven to be problematic. We have encountered compiler binaries crashing when built with the i686 MSVC target, and the GNU C++ toolchain failing with OOMs during LLVM build.\n\nConsidering all these things, cross-compiling these targets from a better supported one is what we have found to be the best solution forward. As part of that, we stopped producing host tools for these targets. For the time being, the prebuilt standard library is still available, and in case of `i686-pc-windows-msvc` still tested on CI.\n\n## \n\nAfter Rust 1.100, it will no longer be possible to install toolchains on 32-bit Windows hosts. We recommend cross-compiling from a still-supported host (such as a 64-bit Windows toolchain) instead. Other 32-bit platforms are not impacted by this change.\n\nFor more details about these demotions, see [RFC 3999](https://github.com/rust-lang/rfcs/blob/51783df9a76c355de7ceebeae101cba47f8ca463/text/3999-std-only-i686-msvc.md) for `i686-pc-windows-msvc` demotion, and [MCP 1020](https://github.com/rust-lang/compiler-team/issues/1020) for `i686-pc-windows-gnu` demotion.\n","body_html":"<p>With Rust 1.100.0, the following changes to 32-bit Windows targets will happen:</p>\n<ul><li><code>i686-pc-windows-msvc</code> Tier 1<em>with</em> host tools target will be demoted to Tier 1<em>without</em> host tools.</li><li><code>i686-pc-windows-gnu</code> Tier 2<em>with</em> host tools target will be demoted to Tier 2<em>without</em> host tools.</li></ul>\n<p>Builds of the standard library will continue to be distributed, but host tools such as the compiler will be no longer available. <code>i686-pc-windows-msvc</code> as a Tier 1 target still undergoes CI testing.</p>\n<p>To build 32-bit Windows binaries, cross-compiling from a still-supported host toolchain (such as a 64-bit Windows ones) will be required from now on.</p>\n<p>## </p>\n<p>Desktop and Server 32-bit only x86 CPUs are no longer sold for over 15 years, and general 32-bit Windows support has ended in October 2025. This means that the development platforms these targets are meant for hardly exist these days, and even if they do exist they typically aren&#39;t capable enough for development.</p>\n<p>Even on the modern x86_64 hardware, building i686 Windows toolchains has proven to be problematic. We have encountered compiler binaries crashing when built with the i686 MSVC target, and the GNU C++ toolchain failing with OOMs during LLVM build.</p>\n<p>Considering all these things, cross-compiling these targets from a better supported one is what we have found to be the best solution forward. As part of that, we stopped producing host tools for these targets. For the time being, the prebuilt standard library is still available, and in case of <code>i686-pc-windows-msvc</code> still tested on CI.</p>\n<p>## </p>\n<p>After Rust 1.100, it will no longer be possible to install toolchains on 32-bit Windows hosts. We recommend cross-compiling from a still-supported host (such as a 64-bit Windows toolchain) instead. Other 32-bit platforms are not impacted by this change.</p>\n<p>For more details about these demotions, see <a href=\"https://github.com/rust-lang/rfcs/blob/51783df9a76c355de7ceebeae101cba47f8ca463/text/3999-std-only-i686-msvc.md\" rel=\"nofollow ugc noopener\">RFC 3999</a> for <code>i686-pc-windows-msvc</code> demotion, and <a href=\"https://github.com/rust-lang/compiler-team/issues/1020\" rel=\"nofollow ugc noopener\">MCP 1020</a> for <code>i686-pc-windows-gnu</code> demotion.</p>","headings":[]}}