2010-03-08 13 views
2

Je les ai vu à propos de compilateurs croisés répondre à How do I cross-compile C code on Windows for a binary to also be run on Unix (Solaris/HPUX/Linux)?compilation croisée pour SPARC x86

Je voudrais savoir comment Y compiler pour SPARC sur une machine x86? Où puis-je trouver un bon compilateur croisé? J'ai également besoin de compiler pour HP OS.

+1

Pouvez-vous expliquer quelles sont les informations dont vous avez besoin pour Solaris/SPARC qui sont/pas/dans cette question? En outre, vous devriez probablement poster une question distincte pour HP UX (et notez l'architecture de la machine HP UX). –

Répondre

6

gcc est entièrement capable de cela. Le compilateur de Sun est peut-être capable, mais je connais mieux gcc. Tout d'abord, vous devriez vous familiariser avec la construction de gcc, et décider si vous n'avez besoin que du compilateur C ou si vous avez besoin de C++ ou d'autres langages. Une fois que vous avez créé gcc pour l'hôte sur lequel vous êtes installé, vous pouvez ensuite recréer gcc pour inclure une cible pour l'ordinateur cible pour lequel vous voulez effectuer la compilation croisée. Lors de la construction d'un compilateur croisé, les trois choses que vous devez obtenir sont la construction, l'hôte et la cible.

  • construction: la machine que vous construisez sur
  • hôte: la machine que vous construisez pour
  • cible: et la machine que GCC produira un code pour

Pour un compilateur croisé , construire et héberger seront les mêmes, et la cible sera différente. Par exemple, voici comment dire au compilateur de construire un compilateur pour une compilation croisée de Solaris x86 Solaris Sparc:

./configure --build=x86_64-sun-solaris2.10 --host=x86_64-sun-solaris2.10 --target=sparc-sun-solaris2.10 

Vous pouvez ensuite créer compilateur supplémentaire pour chaque cible, vous devez traverser compiler pour.

Compiler des exécutables 32 bits et 64 bits sur une plate-forme qui exécute les deux est assez facile. Tout le reste sera un peu plus compliqué. gcc sur Mac est construit avec plusieurs cibles, et Apple a rendu assez facile la création de binaires pour plusieurs plates-formes. Toutes les applications iPhone sont compilées sur x86 et ciblent le processeur ARM. Si vous pouvez obtenir le compilateur construit pour les cibles que vous voulez, la compilation croisée est généralement assez facile à faire.

Questions connexes