2009-10-23 7 views
1

Je souhaite créer des bibliothèques 64 bits pour certains de mes composants C++. Est-il nécessaire de compiler/lier les bibliothèques dans le système d'exploitation fonctionnant sur la machine physique directement? Ou puis-je utiliser un système d'exploitation s'exécutant en tant que machine virtuelle sur le serveur ESX pour créer les bibliothèques? Aurais-je besoin de prendre soin de quoi que ce soit si je construis dans une machine virtuelle? S'il vous plaît avisConstruction de bibliothèques 64 bits

J'étais intéressé par 32/64bit for linux.

Merci d'avance!

+0

Je pensais que vous deviez choisir de le compiler pour 64 bits? Avez-vous aussi à le faire sur une machine 64 bits? – Svish

+0

Je peux le faire sur n'importe quelle machine, si je peux le faire. – vpram86

Répondre

2

Si le système d'exploitation invité est 64 bits et que vous disposez d'un compilateur 64 bits, il n'y a pas de raison de ne pas pouvoir compiler et exécuter une bibliothèque/application 64 bits dans votre système d'exploitation virtualisé.

+0

Cela créera-t-il des problèmes si nous l'exécutons dans une machine physique plus tard? – vpram86

+0

À toutes fins utiles Votre * fonctionne * sur du matériel 64 bits lorsque vous exécutez un système d'exploitation 64 bits virtualisé.Les binaires seront alors exécutés sur du matériel physique 64 bits. Mais vous devez être sûr que vous n'utilisez pas une compilation de compilateur spéciale cela peut avoir des connexions dans l'hyperviseur, ce qui est peu probable si vous utilisez quelque chose comme un compilateur GCC en stock – alexr

+0

Ça sonne beaucoup, je suis très clair maintenant – vpram86

1

Selon le compilateur (que utilisez-vous?), Vous pourriez même avoir juste besoin de lui passer les bonnes options et il le compilera où vous voulez - même sur une machine 32 bits.

+0

J'ai gcc 2.96 sur une machine SuSE 7.3 32 bits. Je l'utilise pour 32bit. Quand j'ai essayé -m64, il ne reconnaissait pas le drapeau et dans une autre machine il demandait des bibliothèques système 64 bits. Je pensais que la construction de 32 bits est possible en 64, mais pas l'inverse. – vpram86

1

Ceci est un peu spécifique à la plate-forme. Par exemple: sur Windows, je compile les binaires 64 bits sur une machine 32 bits (j'ai le compilateur 64 bits installé avec VS) et je m'assure que le bon paquet redistribuable est disponible sur la cible.

+0

Je suis d'accord. Je fais la même chose. Je me demandais à propos de Linux spécifiquement. Je vais modifier les tags. – vpram86

+0

Utilisez-vous multilib? Voir: http://www.airs.com/ian/configure/configure_8.html – dirkgently

+0

Non. Je ne l'utilise pas. :( – vpram86

Questions connexes