J'ai réussi à résoudre un problème que j'avais posé sur fcolc. Pour en
remercier les contributeurs je voudrais maintenant y donner la
solution qui est passé par une recompilation du noyau.
Donc je fais un diff entre le fichier de config du noyau qui posait
problème et le fichier de config qui a résolu le problème.
Le problème (oui j'ai lu et relu la page de man de diff) est que je ne
sais pas interpréter le résultat.
et j'ouvre le fichier avec vim en espérant que la coloration syntaxique
me soit d'un peu de secours.
Mais rien du tout: j'ai l'impression d'être bête, c'est pénible...
J'ai poutant les deux fichiers Config-2.6.7-040728 et
Config-2.6.7-23Sept04 ouverts avec Vi dans deux aterm.
Exemple (les numéros de ligne viennent de Vi):
Dans le fichier obtenu avec diff, j'ai
1 27c27,28
2 < # CONFIG_IKCONFIG is not set
3 ---
4 > CONFIG_IKCONFIG=y
5 > CONFIG_IKCONFIG_PROC=y
6 77a79
Première question: On dirait qu'il a comparé une ligne du premier
fichier à *deux* lignes du second. Qu'est -ce que j'ai loupé ?
Et dans Config-2.6.7-040728, j'ai (avec les numéro de ligne de Vi)
27 # CONFIG_IKCONFIG is not set
28 # CONFIG_EMBEDDED is not set
29 CONFIG_KALLSYMS=y
30 CONFIG_FUTEX=y
alors que dans Config-2.6.7-23Sept04 j'ai:
27 CONFIG_IKCONFIG=y
28 CONFIG_IKCONFIG_PROC=y
29 # CONFIG_EMBEDDED is not set
30 CONFIG_KALLSYMS=y
Donc il a comparé les lignes 27 des deux fichiers, mais pourquoi
y-a-t'il la ligne "> CONFIG_IKCONFIG_PROC=y" qui n'apparait pas dans le
premier fichier mais dans le deuxième fichier en ligne 28 ?
Bref, je suis complètement perdu.
Comment lire le résultat de la commande diff ?
Je continue:
Dans le fichier créé par diff, j'ai:
6 77a79
7 > # CONFIG_X86_EMU486 is not set
8 151c153,175
Les lignes 75 à 79 du premier fichier sont:
75 # CONFIG_MCYRIXIII is not set
76 # CONFIG_MVIAC3_2 is not set
77 CONFIG_X86_GENERIC=y
78 CONFIG_X86_CMPXCHG=y
79 CONFIG_X86_XADD=y
Celles du deuxième sont:
75 # CONFIG_MWINCHIP3D is not set
76 # CONFIG_MCYRIXIII is not set
77 # CONFIG_MVIAC3_2 is not set
78 CONFIG_X86_GENERIC=y
79 # CONFIG_X86_EMU486 is not set
Elles sont toutes différentes ! Pourquoi la sortie de diff n'en
parle-t-elle pas ? (même si j'ai bien vu que la ligne 77 du premier
fichier est la même que la 78ème du second fichier) Mais toutes les
autres lignes sont différentes et diff n'en dit rien ?!??
Vous l'avez compris, j'ai un problème pour interpréter la sortie de la
commande diff.
Merci de votre aide.
--
> il me semble que domain.com est réservé mais n'existe pas. Pour
> éviter les problèmes avec ceux qui recopient les FAQ texto.
C'est quoi ces FAQ texto, ça parle de traitement de texte ?
-+- FC in Guide du linuxien pervers - "In texto veritas" -+-
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jérémy JUST
On Sat, 25 Sep 2004 19:27:42 +0200 Hugolino wrote:
Dans le fichier obtenu avec diff, j'ai 1 27c27,28 2 < # CONFIG_IKCONFIG is not set 3 --- 4 > CONFIG_IKCONFIG=y 5 > CONFIG_IKCONFIG_PROC=y 6 77a79
Première question: On dirait qu'il a comparé une ligne du premier fichier à *deux* lignes du second. Qu'est -ce que j'ai loupé ?
Non, il n'a pas « comparé à » mais « constaté qu'il fallait remplacer par ». Il faut voir les chevrons du format diff comme des flèches qui indiquent les excisions/insertions à effectuer pour passer d'un fichier à l'autre.
Par exemple ici, il faut retirer la ligne # CONFIG_IKCONFIG is not set et ajouter à la place les lignes CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y
Rien de bien compliqué.
Si tu veux mieux visualiser, essaie l'option -y de diff (éventuellement dans une xterm très large, avec l'option --width 0).
Comment lire le résultat de la commande diff ?
Xemacs colore très bien les patches (la sortie de diff est un patch). Tant qu'on y est, tu devrais utiliser l'option -u de diff pour générer des patches à diffuser; c'est un diff « unifié », qui fournit quelques lignes de contexte autour des différences (ça permet de patcher des fichiers légèrement différents des tiens).
Je continue: Dans le fichier créé par diff, j'ai:
6 77a79 7 > # CONFIG_X86_EMU486 is not set 8 151c153,175
Essaie de faire ta comparaison dans l'autre sens. 77a79 devrait se transformer en 79d77. a -> added d -> deleted c -> changed
Mais encore une fois, utilise plutôt « diff -u ». C'est beaucoup plus lisible par un humain, et plus fiable pour porter les patches.
-- Jérémy JUST
On Sat, 25 Sep 2004 19:27:42 +0200
Hugolino <hugolino@fri.fr> wrote:
Dans le fichier obtenu avec diff, j'ai
1 27c27,28
2 < # CONFIG_IKCONFIG is not set
3 ---
4 > CONFIG_IKCONFIG=y
5 > CONFIG_IKCONFIG_PROC=y
6 77a79
Première question: On dirait qu'il a comparé une ligne du premier
fichier à *deux* lignes du second. Qu'est -ce que j'ai loupé ?
Non, il n'a pas « comparé à » mais « constaté qu'il fallait remplacer
par ».
Il faut voir les chevrons du format diff comme des flèches qui
indiquent les excisions/insertions à effectuer pour passer d'un fichier
à l'autre.
Par exemple ici, il faut retirer la ligne
# CONFIG_IKCONFIG is not set
et ajouter à la place les lignes
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
Rien de bien compliqué.
Si tu veux mieux visualiser, essaie l'option -y de diff
(éventuellement dans une xterm très large, avec l'option --width 0).
Comment lire le résultat de la commande diff ?
Xemacs colore très bien les patches (la sortie de diff est un patch).
Tant qu'on y est, tu devrais utiliser l'option -u de diff pour générer
des patches à diffuser; c'est un diff « unifié », qui fournit quelques
lignes de contexte autour des différences (ça permet de patcher des
fichiers légèrement différents des tiens).
Je continue:
Dans le fichier créé par diff, j'ai:
6 77a79
7 > # CONFIG_X86_EMU486 is not set
8 151c153,175
Essaie de faire ta comparaison dans l'autre sens. 77a79 devrait se
transformer en 79d77.
a -> added
d -> deleted
c -> changed
Mais encore une fois, utilise plutôt « diff -u ». C'est beaucoup plus
lisible par un humain, et plus fiable pour porter les patches.
On Sat, 25 Sep 2004 19:27:42 +0200 Hugolino wrote:
Dans le fichier obtenu avec diff, j'ai 1 27c27,28 2 < # CONFIG_IKCONFIG is not set 3 --- 4 > CONFIG_IKCONFIG=y 5 > CONFIG_IKCONFIG_PROC=y 6 77a79
Première question: On dirait qu'il a comparé une ligne du premier fichier à *deux* lignes du second. Qu'est -ce que j'ai loupé ?
Non, il n'a pas « comparé à » mais « constaté qu'il fallait remplacer par ». Il faut voir les chevrons du format diff comme des flèches qui indiquent les excisions/insertions à effectuer pour passer d'un fichier à l'autre.
Par exemple ici, il faut retirer la ligne # CONFIG_IKCONFIG is not set et ajouter à la place les lignes CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y
Rien de bien compliqué.
Si tu veux mieux visualiser, essaie l'option -y de diff (éventuellement dans une xterm très large, avec l'option --width 0).
Comment lire le résultat de la commande diff ?
Xemacs colore très bien les patches (la sortie de diff est un patch). Tant qu'on y est, tu devrais utiliser l'option -u de diff pour générer des patches à diffuser; c'est un diff « unifié », qui fournit quelques lignes de contexte autour des différences (ça permet de patcher des fichiers légèrement différents des tiens).
Je continue: Dans le fichier créé par diff, j'ai:
6 77a79 7 > # CONFIG_X86_EMU486 is not set 8 151c153,175
Essaie de faire ta comparaison dans l'autre sens. 77a79 devrait se transformer en 79d77. a -> added d -> deleted c -> changed
Mais encore une fois, utilise plutôt « diff -u ». C'est beaucoup plus lisible par un humain, et plus fiable pour porter les patches.
-- Jérémy JUST
TiChou
Dans le message <news:, *Jérémy JUST* tapota sur f.c.o.unix :
Mais encore une fois, utilise plutôt « diff -u ». C'est beaucoup plus lisible par un humain,
Le format « côte à côte » obtenu avec l'option '-y' est lui aussi plus humain pour visualiser les différences.
-- TiChou
Dans le message <news:20040926004840.74077cab@norbert.inapg.inra.fr>,
*Jérémy JUST* tapota sur f.c.o.unix :
Mais encore une fois, utilise plutôt « diff -u ». C'est beaucoup plus
lisible par un humain,
Le format « côte à côte » obtenu avec l'option '-y' est lui aussi plus
humain pour visualiser les différences.