Ouvrir le menu principal

MacGeneration

Recherche

Programmer en Rust pour Mac OS 9, c'est possible

Pierre Dandumont

mercredi 25 janvier 2023 à 08:30 • 3

macOS

Dans un post sur Twitter, Bastian a montré une image qui va faire plaisir aux aficionados des versions classiques de Mac OS. En effet, il a réussi à lancer un programme conçu en Rust sur le vénérable OS d'Apple, abandonné en 2001.

Le résultat des essais de Bastian.

Rust est un langage de programmation moderne et assez récent, il a été pensé à partir de 2006 et dévoilé officiellement par Mozilla — employeur du concepteur — en 2010. Pour exécuter un programme conçu dans ce langage sur un Mac des années 90, il faut donc ruser un peu. Il n'y a pas de CodeWarrior ici (et encore moins de Xcode, évidemment), mais un passage par un programme open source, w2c2. Ce dernier permet de convertir le code WebAssembly vers le C, et il prend en charge les PowerPC 32 bits.

Plusieurs étapes nécessaires

Le lien avec Rust n'est donc pas totalement direct : WebAssembly est une norme qui se base sur un bytecode, un peu comme le Java. Il s'agit d'un code intermédiaire, indépendant de la plateforme, qui peut être exécuté à travers un interpréteur qui peut être un navigateur. Mais ce bytecode peut aussi être converti pour être exécuté directement, ce que fait le programme w2c2.

Pour obtenir le résultat montré en image sous Mac OS 9, il faut donc d'abord compiler le code Rust pour obtenir du bytecode WebAssembly (par exemple avec Emscripten) et ensuite convertir le résultat obtenu en C, pour une exécution sous Mac OS 9. Comme w2c2supporte officiellement les PowerPC, il a probablement été modifié pour prendre en charge les anciens OS Apple ou pour générer du code Carbon, compatible avec Mac OS 9 mais aussi Mac OS X. Et même si c'est totalement inutile, c'est tout de même assez amusant.

Ajouter ce site dans Google News

Apple Upgrade et le sens du timing, les stocks de MacBook Air au plus bas : la semaine Apple

02/08/2026 à 20:50

• 14


TMOG : le créateur du gestionnaire des tâches de Windows lance son alternative au Moniteur d'activité

02/08/2026 à 18:15

• 3


Sony assume la fin des jeux PlayStation sur disque, et les résultats financiers lui donnent raison

02/08/2026 à 10:09

• 84


Sport connecté : l’Europe prise au piège entre vie privée et interopérabilité

02/08/2026 à 08:13

• 16


Microsoft promet d'alléger Windows 11 pour les configurations à 8 Go de RAM

02/08/2026 à 08:00

• 53


Découverte d’iOS 27, IA locale, tests… Les lectures estivales du Club iGen

01/08/2026 à 15:40

• 3


SuperDuper 4 : l'outil de clonage culte se met à l'IA et accélère ses sauvegardes

01/08/2026 à 12:48

• 21


Promo : l’iPhone 17 Pro Max tombe à 1 260 € (son prix le plus bas)

01/08/2026 à 12:14

• 19


Sortie de veille - les opinions impopulaires : Firefox est le meilleur navigateur sur Mac

01/08/2026 à 08:00

• 103


Une app pour détecter les lunettes connectées fait un carton surprise sur l’App Store US

01/08/2026 à 07:47

• 38


Mon IA à la maison : place à OpenClaw sur mon Mac

01/08/2026 à 07:00

• 70


Google devrait lancer son AirTag pour Android, avec le Google Pixel Tag

31/07/2026 à 22:22

• 8


L’iPhone Air 2 se précise : de quoi en faire un best-seller face au tarif de l’iPhone 18 Pro ?

31/07/2026 à 20:30

• 58


Vérification d'âge : l'Arcom tente de bloquer 31 nouveaux sites pornographiques (mais le problème reste entier)

31/07/2026 à 16:03

• 81


Anthropic ne veut pas être à la traîne : ses modèles ont eux aussi attaqué des services sur le web

31/07/2026 à 16:01

• 36


Knockoff débarrasse désormais Amazon de ses marques obscures dans Safari

31/07/2026 à 14:54

• 11