OVH Cloud OVH Cloud

Hackons a l'aise avec les devtools?

6 réponses
Avatar
Saïd
bonjour,

peut-on, avec les DevTools d'apple, lancer une application en pas a pas.
application dont on ne possede que le binaire executable.

C'est pour shunter une fonction de verification de DVD dans une application
dont le nom commence par DVD et se termine par Player.

--
Saïd.

6 réponses

Avatar
Schmurtz
peut-on, avec les DevTools d'apple, lancer une application en pas a pas.
application dont on ne possede que le binaire executable.


Oui, mais je te souhaite bon courage :)

Il y a gdb pour les geekismes, et Xcode pour les geeks.

Pour Xcode, tu crées un nouveau projet, tu crées un nouvel exécutable
(new custom Executable) qui lance DVD Player, puis tu lances avec le
débogueurŠ et surtout tu mouds un morceau de granit avec le petit doigt
en répétant "xyutropimov" en continu et ensuite tu verses la poudre
obtenue dans l'interstice entre les touches s et p du clavier de ta
grand-mère.

Bonne chance.

C'est pour shunter une fonction de verification de DVD dans une application
dont le nom commence par DVD et se termine par Player.


Et avec un espace entre les deux ?

--
Schmurtz

Avatar
ericb
peut-on, avec les DevTools d'apple, lancer une application en pas a pas.
application dont on ne possede que le binaire executable.



Oui, mais je te souhaite bon courage :)

Il y a gdb pour les geekismes, et Xcode pour les geeks.


Si le binaire est strippé, gdb, il va aux fraises...Pour plus d'infos,
je ne connais pas l'équivalent de strace et de ltrace sous Mac OS X,
mais peut-être que cela pourra aussi te servir...


Pour Xcode, tu crées un nouveau projet, tu crées un nouvel exécutable
(new custom Executable) qui lance DVD Player, puis tu lances avec le
débogueurŠ et surtout tu mouds un morceau de granit avec le petit doigt
en répétant "xyutropimov" en continu et ensuite tu verses la poudre
obtenue dans l'interstice entre les touches s et p du clavier de ta
grand-mère.


:-p


C'est pour shunter une fonction de verification de DVD dans une application
dont le nom commence par DVD et se termine par Player.



amha, c'est plus tordu qu'une simple fonction...



--
Welcome to Microsoft Linux 1.0. Enter your login and password,
or press "Enter" to log as root.
login:


Avatar
Saïd
ericb :
peut-on, avec les DevTools d'apple, lancer une application en pas a pas.
application dont on ne possede que le binaire executable.



Oui, mais je te souhaite bon courage :)

Il y a gdb pour les geekismes, et Xcode pour les geeks.


Si le binaire est strippé, gdb, il va aux fraises...Pour plus d'infos,
je ne connais pas l'équivalent de strace et de ltrace sous Mac OS X,
mais peut-être que cela pourra aussi te servir...



ktrace.

--
Saïd. (Il y a meme un man)



Avatar
Saïd
Schmurtz :
peut-on, avec les DevTools d'apple, lancer une application en pas a pas.
application dont on ne possede que le binaire executable.


Oui, mais je te souhaite bon courage :)

Il y a gdb pour les geekismes, et Xcode pour les geeks.

Pour Xcode, tu crées un nouveau projet, tu crées un nouvel exécutable
(new custom Executable) qui lance DVD Player, puis tu lances avec le
débogueurŠ et surtout tu mouds un morceau de granit avec le petit doigt
en répétant "xyutropimov" en continu et ensuite tu verses la poudre
obtenue dans l'interstice entre les touches s et p du clavier de ta
grand-mère.



Ta grand mere, elle a un clavier Dvorak???


Et avec un espace entre les deux ?



Comment t'as devine?

--
Saïd.


Avatar
Schmurtz
ericb wrote:

Si le binaire est strippé, gdb, il va aux fraises...


Si le binaire est strippé, gdb peut toujours avancer pas à pas et
afficher le code désassemblé, Xcode aussi (puisqu'il utilise gdb). mais
par contre, il n'y a pas plus les noms des fonctions donc pas facile de
se repérer.

On peut mettre des point d'arrêt sur des fonctions de la CoreFoundation
(pour carbon), et la Foundation (pour cocoa).

--
Schmurtz

Avatar
ericb

Si le binaire est strippé, gdb peut toujours avancer pas à pas et
afficher le code désassemblé,


Je voulais dire que la difficulté est sans commune mesure. Oui, on peut
avancer, mais il faut maîtriser beaucoup plus de choses, et surtout être
très patient et observateur. D'après ce que j'ai pu lire, gdb serait un
des débogueurs qui s'en tire le moins mal dans cette situation.

(Il se trouve que je suis juste en train d'écrire un petit tuto pour gdb
(pour un TP), et j'en ai profité pour essayer de tracer iun programme
compilé sans -ggdb ni -g. C'est vraiment plus difficile à utiliser quand
même...)

Xcode aussi (puisqu'il utilise gdb).


La preuve :-)

mais
par contre, il n'y a pas plus les noms des fonctions donc pas facile de
se repérer.


C'est ce qui doit prendre le plus de temps. Je pense que l'expérience
est aussi très importante quand on débogue dans ces conditions.


On peut mettre des point d'arrêt sur des fonctions de la CoreFoundation
(pour carbon), et la Foundation (pour cocoa).



Merci pour toutes ces infos sur carbon et cocoa (que je ne connais pas).
Je ne connais pas Xcode (qui m'a l'air vraiment bien) non plus, mais
avec ce que j'en lis, cela doit être facile à prendre en mains si on
utilise déjà des outils du type gcc / gdb / vi (ou emacs ) ...