OVH Cloud OVH Cloud

Drogue

114 réponses
Avatar
Patator
je fais tous les jours emerge --sync

vous apt-get ou rpmdrake?

10 réponses

Avatar
JolinFire
Le Tue, 25 Jul 2006 15:46:58 +0000, Nicolas George a écrit :

"JolinFire" , dans le message <44c631cf$0$865$,
a écrit :
Pourquoi ? Un exécutable de 10 Mo en un seul morceau, ce n'est pas le
signe d'une compilation statique ?!


Non. C'est signe d'une application grosse, probablement car complexe. Elle
serait juste _encore plus_ grosse si elle était statique.

Si j'essaye de renommer / supprimer un fichier .so, le résultat est net :

./firefox-bin: error while loading shared libraries: libxpcom.so: cannot
open shared object file: No such file or directory


Ce qui est une preuve de plus que c'est lié dynamiquement.


Je viens de compiler firefox en virant les options --enable-static et
--disable-shared.

$ ls -lh f*
-rwxr-xr-x 1 fred fred 5,2K 2006-07-25 18:54 firefox
-rwxr-xr-x 1 fred fred 4,1K 2006-07-25 18:56 firefox-bin

Euh... Si Firefox est compilé en dynamique, alors pourquoi un tel régime
de taille ?

/me perd son latin.


Avatar
JolinFire
Le Tue, 25 Jul 2006 16:54:16 +0000, Kevin Denis a écrit :

Le 25-07-2006, JolinFire a écrit :
a écrit :
10 Mo ? C'est surement du compilé statiquement.


N'importe quoi.

Pourquoi ? Un exécutable de 10 Mo en un seul morceau, ce n'est pas le

signe d'une compilation statique ?!

Le signe d'une "compilation statique" (je met entre guillemets car

je trouve ca mal dit) c'est:
:~$ file /sbin/init
/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
statically linked, stripped
^^^^^^^^^^^^^^^^^
la, statically linked. et oh surprise:
:~$ ldd /sbin/init
not a dynamic executable

mais firefox:
:~$ file /usr/src/firefox/firefox-bin
/usr/src/firefox/firefox-bin: ELF 32-bit LSB executable, Intel 80386,
version 1 (SYSV), dynamically linked (uses shared libs), stripped

dynamically linked, uses shared libs, cela signifie quoi?

La taille d'un executable n'a rien a voir avec ses proprietes dynamiques
ou statiques
:~$ ls -l /sbin/init
-rwxr-xr-x 1 root bin 470972 aoû 4 2005 /sbin/init*

470ko, ce n'est rien, et c'est du statique.


Justement. J'ai compilé en virant --enable-static & --disable-shared => 4
Ko pour firefox-bin !

Et comparer un outil système comme init a un navigateur, il y a quand même
une différence coté taille du code, non ? :)

Etrange cependant. Etrange. A moins que la compilation statique n'en soit
pas vraiment une ?!




Avatar
Nicolas George
"JolinFire" , dans le message <44c64e47$0$852$,
a écrit :
$ ls -lh f*
-rwxr-xr-x 1 fred fred 5,2K 2006-07-25 18:54 firefox
-rwxr-xr-x 1 fred fred 4,1K 2006-07-25 18:56 firefox-bin


Montre-nous plutôt ce qu'en dit objdump -h.

Avatar
Nicolas George
"JolinFire" , dans le message <44c6510c$0$852$,
a écrit :
Etrange cependant. Etrange. A moins que la compilation statique n'en soit
pas vraiment une ?!


C'est ce qu'on t'explique depuis des heures.

Avatar
JolinFire
Le Tue, 25 Jul 2006 17:36:54 +0000, Nicolas George a écrit :

"JolinFire" , dans le message <44c64e47$0$852$,
a écrit :
$ ls -lh f*
-rwxr-xr-x 1 fred fred 5,2K 2006-07-25 18:54 firefox
-rwxr-xr-x 1 fred fred 4,1K 2006-07-25 18:56 firefox-bin


Montre-nous plutôt ce qu'en dit objdump -h.


Bon, voila ce que cela donne sur un minefield fraichement compilé
(--enable-static / -- disable shared)

objdump -h firefox-bin

firefox-bin: format de fichier elf32-i386

Sections:
Idx Nom Taille VMA LMA Fich off Algn
0 .interp 00000013 08048114 08048114 00000114 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
1 .note.ABI-tag 00000020 08048128 08048128 00000128 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
2 .hash 0000471c 08048148 08048148 00000148 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
3 .dynsym 00009c00 0804c864 0804c864 00004864 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .dynstr 0001029d 08056464 08056464 0000e464 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
5 .gnu.version 00001380 08066702 08066702 0001e702 2**1
CONTENTS, ALLOC, LOAD, READONLY, DATA
6 .gnu.version_r 00000260 08067a84 08067a84 0001fa84 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
7 .rel.dyn 00000308 08067ce4 08067ce4 0001fce4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
8 .rel.plt 00004ad8 08067fec 08067fec 0001ffec 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
9 .init 00000017 0806cac4 0806cac4 00024ac4 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
10 .plt 000095c0 0806cadc 0806cadc 00024adc 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
11 .text 008e6ccc 080760a0 080760a0 0002e0a0 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
12 .fini 0000001d 0895cd6c 0895cd6c 00914d6c 2**0
CONTENTS, ALLOC, LOAD, READONLY, CODE
13 .rodata 00206f00 0895cda0 0895cda0 00914da0 2**5
CONTENTS, ALLOC, LOAD, READONLY, DATA
14 .eh_frame 00000004 08b63ca0 08b63ca0 00b1bca0 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
15 .ctors 000000ac 08b64000 08b64000 00b1c000 2**2
CONTENTS, ALLOC, LOAD, DATA
16 .dtors 00000008 08b640ac 08b640ac 00b1c0ac 2**2
CONTENTS, ALLOC, LOAD, DATA
17 .jcr 00000004 08b640b4 08b640b4 00b1c0b4 2**2
CONTENTS, ALLOC, LOAD, DATA
18 .data.rel.ro 000010d0 08b640c0 08b640c0 00b1c0c0 2**5
CONTENTS, ALLOC, LOAD, DATA
19 .dynamic 00000208 08b65190 08b65190 00b1d190 2**2
CONTENTS, ALLOC, LOAD, DATA
20 .got 00000248 08b65398 08b65398 00b1d398 2**2
CONTENTS, ALLOC, LOAD, DATA
21 .got.plt 00002578 08b655e0 08b655e0 00b1d5e0 2**2
CONTENTS, ALLOC, LOAD, DATA
22 .data 00015dfc 08b67b60 08b67b60 00b1fb60 2**5
CONTENTS, ALLOC, LOAD, DATA
23 .bss 00015c04 08b7d960 08b7d960 00b3595c 2**5
ALLOC
24 .comment 0001206c 00000000 00000000 00b3595c 2**0
CONTENTS, READONLY


Avatar
JolinFire
Le Tue, 25 Jul 2006 17:37:55 +0000, Nicolas George a écrit :

"JolinFire" , dans le message <44c6510c$0$852$,
a écrit :
Etrange cependant. Etrange. A moins que la compilation statique n'en soit
pas vraiment une ?!


C'est ce qu'on t'explique depuis des heures.


Alors, pourquoi l'appeler statique dans ce cas ?!


Avatar
JolinFire
Le Tue, 25 Jul 2006 19:41:29 +0200, Manuel Leclerc a écrit :


[...]


Non. Le principe de la mise à jour automatisée => firefox 1.5.0.0,
quelque soit la plateforme concernée. En dehors des systèmes de
paquetages à la .deb / .rpm, bien entendu.


Peut être n'est-ce pas aussi simple. Ca fait un moment que
j'utilise FF et le coup de la version N+1 qui vient automatiquement
sans même me demander mon avis, ça ne me l'a fait que pour la
1.5.0.4 (je crois...)


Ah, fallait préciser que tu parles d'update en douce...


Il me semble que j'avais complètement désinstaller la 1.5.0.3
suite à une putain de merde de bordel de perte de mes favoris,


Gnnn ?

et que j'ai donc refait une install "sans antériorité". Un
lurkeur Microsofteux pourrait peut être nous dire s'il a bien
vu arriver automatiquement une 1.5.0.1 après avoir installé
une 1.5 par dessus une 1.x ?


Pourquoi chercher la merde aussi ?


Avatar
JolinFire
Le Tue, 25 Jul 2006 19:42:36 +0200, Patator a écrit :

JolinFire wrote:

[...]



il en faut des libs pour lancer un navigateur LEGER


Ah ? Si tu sors les biblios GTK2 et apparentées (atk, pango), la liste
diminue vite :

linux-gate.so.1 => (0xffffe000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7f4f000)
libmozjs.so => not found
libxpcom.so => not found
libxpcom_core.so => not found
libplds4.so => /usr/lib/libplds4.so (0xb7f4b000)
libplc4.so => /usr/lib/libplc4.so (0xb7f46000)
libnspr4.so => /usr/lib/libnspr4.so (0xb7f16000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7f12000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7b5b000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb7b4e000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb7b46000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb7b43000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xb7b3b000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb7b38000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb7b2e000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb7b2a000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb79c3000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb789d000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb787b000)
libsmime3.so => /usr/lib/libsmime3.so (0xb7859000)
libssl3.so => /usr/lib/libssl3.so (0xb7838000)
libnss3.so => /usr/lib/libnss3.so (0xb77cc000)
libsoftokn3.so => /usr/lib/libsoftokn3.so (0xb775f000)
libXt.so.6 => /usr/lib/libXt.so.6 (0xb7711000)
libz.so.1 => /usr/lib/libz.so.1 (0xb76eb000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb75eb000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb75e1000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb74b2000)
/lib/ld-linux.so.2 (0xb7f74000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7493000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb748f000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb746c000)
libSM.so.6 => /usr/lib/libSM.so.6 (0xb7464000)
libICE.so.6 => /usr/lib/libICE.so.6 (0xb744c000)


A propos, tu fais comment pour lancer un logiciel sous X sans les biblios
de X ? ;)


Avatar
Nicolas George
"JolinFire" , dans le message <44c6585b$0$858$,
a écrit :
-rwxr-xr-x 1 fred fred 5,2K 2006-07-25 18:54 firefox
-rwxr-xr-x 1 fred fred 4,1K 2006-07-25 18:56 firefox-bin
Montre-nous plutôt ce qu'en dit objdump -h.

Bon, voila ce que cela donne sur un minefield fraichement compilé

(--enable-static / -- disable shared)
<snip>

11 .text 008e6ccc 080760a0 080760a0 0002e0a0 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
<snip>


Tu fais exprès, ou tu es vraiment complètement neuneu ? Ce n'est
certainement pas un fichier de 4,1 ko, ça, donc ce n'est pas le fichier dont
tu parlais plus haut.



Avatar
Nicolas George
"JolinFire" , dans le message <44c65877$0$858$,
a écrit :
Alors, pourquoi l'appeler statique dans ce cas ?!


Il n'y a que toi pour croire qu'elle est prétendue statique.