Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

code C pour conversion de big-endian --> little endian

3 réponses
Avatar
hicham
Bonjour a tous,



J'ai un programme compiler sur une machine Solaris 8 sparc, et je dois le
faire tourner sur une machine linux debian 3.0 woody. Le problème c'est qu'
il est compilé en big-endian et que la machine sur laquelle se trouve debian
et little-endian. Sachant que je ne puis pas le recompiler, je suis à la
recherche d'un code en c sous linux qui me peremettera de convertir mon
fichier de big-endian vers lillte-endian.



Merci pour votre aide.

3 réponses

Avatar
vm66
Salut,
Il n'existe pas d'outils pour le faire, ca c'est impossible de le faire!
Seul une recompilation te permet de porter ton appli sur Linux.


vincent

"hicham" a écrit dans le message de
news:bdrm79$q0$
Bonjour a tous,



J'ai un programme compiler sur une machine Solaris 8 sparc, et je dois le
faire tourner sur une machine linux debian 3.0 woody. Le problème c'est
qu'

il est compilé en big-endian et que la machine sur laquelle se trouve
debian

et little-endian. Sachant que je ne puis pas le recompiler, je suis à la
recherche d'un code en c sous linux qui me peremettera de convertir mon
fichier de big-endian vers lillte-endian.



Merci pour votre aide.




Avatar
Hubert Quarantel-Colombani
hicham wrote:
Bonjour a tous,



J'ai un programme compiler sur une machine Solaris 8 sparc, et je dois le
faire tourner sur une machine linux debian 3.0 woody. Le problème c'est qu'
il est compilé en big-endian et que la machine sur laquelle se trouve debian
et little-endian. Sachant que je ne puis pas le recompiler, je suis à la
recherche d'un code en c sous linux qui me peremettera de convertir mon
fichier de big-endian vers lillte-endian.



Merci pour votre aide.





Bonjour,

L'aspect big/little endian n'est pas la seule difference entre Sparc et
Intel... d'ailleurs quel sparc ? et quel intel ?

Deplus, les deux systemes (Solaris et Linux) divergent suffisamment
pour que les executables de l'un soient inexploitables sur l'autre, meme
big/little endian convertis !!

As-tu pense aux eventuelles bibliotheques du systeme auxquelles
seraient lies tes executables ???

Je ne suis pas forcement sur qu'une conversion big/little endian
permettrait d'executer sur Solaris 8 Intel un programme compile sur
Solaris 8 Sparc

Je ne croit pas que tu puisse t'en tirer a si bon compte !! La seule
solution reellement evisageable est la recompilation du code source...

Hubert.

Avatar
Jocelyn Jaubert
hicham a pris sa plume pour écrire:
J'ai un programme compiler sur une machine Solaris 8 sparc, et je dois le
faire tourner sur une machine linux debian 3.0 woody. Le problème c'est qu'
il est compilé en big-endian et que la machine sur laquelle se trouve debian
et little-endian. Sachant que je ne puis pas le recompiler, je suis à la
recherche d'un code en c sous linux qui me peremettera de convertir mon
fichier de big-endian vers lillte-endian.


Comme quelqu'un l'a déjà dit, il vaudrait mieux que tu recompiles les
sources C de ton programme.

En effet, il n'y a pas que le big-endian / little-endian comme
différence: les ordres du processeurs ne sont pas les mêmes (addition,
soustraction, ...).

Une solution est peut-être de prendre un désassembleur, et un
décompilateur, mais je ne connais pas de logiciels faisant ceci
facilement.

--
Jocelyn