Introduction : Votre premier "Hello, world!" en Rust qui refuse de fonctionner
\n\nVous venez d'installer Rust, vous ouvrez le terminal, écrivez votre premier code dans ce langage élégant et sûr, tapez cargo run — et vous obtenez immédiatement une ligne rouge déroutante :
error: linker `link.exe` not found\n |\n = note: The system cannot find the file specified. (os error 2)\n\n\nÇa vous dit quelque chose ? Ne paniquez pas ! Vous venez de rencontrer l'un des problèmes les plus courants chez les débutants qui passent à Rust sous Windows. Cette erreur n'est ni un bug du compilateur ni une malédiction. C'est simplement un malentendu entre votre nouvel ami Rust et le système d'exploitation. Des milliers de développeurs sont passés par là sur Stack Overflow, et aujourd'hui nous allons résoudre cette situation une fois pour toutes. Bienvenue dans le monde de la programmation système sous Windows — ici, il en faut un peu plus que simplement installer le langage.
\n\nPourquoi Rust ne trouve-t-il pas link.exe ? Comprenons la racine du problème
\n\nPour comprendre pourquoi l'erreur linker link.exe not found se produit, il faut regarder sous le capot du processus de compilation. Lorsque vous écrivez rustc main.rs ou cargo build, Rust compile votre code en fichiers objets. Mais tout ne s'arrête pas là. Pour obtenir un fichier exécutable prêt (.exe), ces fichiers objets doivent être liés (link) ensemble. Ce travail est effectué par un programme spécial — le linker.
Sous Windows, le linker par défaut est link.exe de la suite d'outils Microsoft Visual C++ (MSVC). Rust, en tant que langage qui "s'entend" avec le compilateur système, choisit par défaut la toolchain MSVC (sauf si vous avez spécifié autre chose lors de l'installation). Le problème est que ce linker ne fait pas partie de Windows. Il est fourni avec Visual Studio ou le package séparé Build Tools for Visual Studio.
Point clé : Rust ne peut pas trouver link.exe car il n'est tout simplement pas installé sur votre ordinateur, ou n'est pas ajouté à la variable d'environnement système PATH.
Liste de vérification rapide : qu'est-ce qui a pu mal se passer ?
\n- \n
- Vous avez installé Rust via
rustup-init.exeet appuyé sur "Entrée" partout. C'est normal, mais l'installateur n'installe pas Visual Studio. \n - Vous avez installé Visual Studio Code ou un autre IDE, mais pas Visual Studio. Ce n'est pas la même chose. \n
- Vous avez choisi la toolchain
GNUlors de l'installation. Si oui, vous n'avez pas besoin de MSVC, mais deGCC(par exemple via MinGW). Mais aujourd'hui, nous parlons du MSVC standard. \n
Solution n°1 : Installation de Visual Studio Build Tools (Méthode recommandée)
\n\nC'est la méthode la plus correcte et "native" pour Windows. Microsoft propose un package gratuit qui inclut uniquement le compilateur et le linker — sans l'IDE volumineux.
\n\n- \n
- Téléchargez l'installateur : Rendez-vous sur le site officiel de Microsoft et téléchargez Build Tools for Visual Studio 2022. Cherchez "Visual Studio 2022 Build Tools". \n
- Lancez l'installation : Exécutez le fichier
vs_BuildTools.exetéléchargé. \n - Sélectionnez les composants : Dans l'installateur, choisissez l'onglet "Charges de travail" (Workloads). Cochez la case "Développement d'applications de bureau en C++" (Desktop development with C++). \n
- Installation : Cliquez sur le bouton "Installer" en bas à droite. Le processus peut prendre 10 à 20 minutes, car environ 2-3 Go de données sont téléchargés. \n
- Redémarrage (optionnel) : Une fois l'installation terminée, redémarrez votre ordinateur pour que les variables d'environnement soient mises à jour. \n
Après cela, ouvrez un nouveau terminal et réessayez de compiler votre projet :
\n\ncargo new hello_world