Pourquoi le sorting de la sortie de nm est-il différent entre les plates-formes?

J’ai un fichier elf sur lequel je réalise un nm en tapant nm -n elf.elf et j’obtiens la sortie suivante sur deux machines différentes:

Feutre

80900114 t $LFB2.testmod1 80900114 t $LFE2.main 80900114 t $LSM0.testmod1 80900114 t $LSM1.testmod1 80900114 t $LX2.testmod1 80900114 t $Letext0.main 80900114 t $Ltext0.testmod1 80900114 T _testmod1 locale LANG=en_GB.UTF-8 LC_CTYPE="en_GB.UTF-8" LC_NUMERIC="en_GB.UTF-8" LC_TIME="en_GB.UTF-8" LC_COLLATE="en_GB.UTF-8" LC_MONETARY="en_GB.UTF-8" LC_MESSAGES="en_GB.UTF-8" LC_PAPER="en_GB.UTF-8" LC_NAME="en_GB.UTF-8" LC_ADDRESS="en_GB.UTF-8" LC_TELEPHONE="en_GB.UTF-8" LC_MEASUREMENT="en_GB.UTF-8" LC_IDENTIFICATION="en_GB.UTF-8" LC_ALL= 

Ubuntu

 80900114 t $Letext0.main 80900114 t $LFB2.testmod1 80900114 t $LFE2.main 80900114 t $LSM0.testmod1 80900114 t $LSM1.testmod1 80900114 t $Ltext0.testmod1 80900114 t $LX2.testmod1 80900114 T _testmod1 locale LANG=en_GB.UTF-8 LANGUAGE=en_GB:en LC_CTYPE="en_GB.UTF-8" LC_NUMERIC="en_GB.UTF-8" LC_TIME="en_GB.UTF-8" LC_COLLATE="en_GB.UTF-8" LC_MONETARY="en_GB.UTF-8" LC_MESSAGES="en_GB.UTF-8" LC_PAPER="en_GB.UTF-8" LC_NAME="en_GB.UTF-8" LC_ADDRESS="en_GB.UTF-8" LC_TELEPHONE="en_GB.UTF-8" LC_MEASUREMENT="en_GB.UTF-8" LC_IDENTIFICATION="en_GB.UTF-8" LC_ALL= 

J’ai affiché une petite partie de la sortie sur les deux machines, j’ai vérifié les parameters régionaux et ils sont identiques, ce qui ferait que la sortie serait dans un ordre différent sur ces deux machines?

Un sorting alphanumérique donne également un ordre différent sur les deux machines, pourquoi?

(Remarque: les versions de nm sont différentes, mais je ne m’attendrais pas à ce que le comportement d’un type soit spécifique à la version.)