|
|
|
#65 |
|
Messages: n/a
Hébergeur: |
Le Tue, 25 Jul 2006 18:36:58 +0200, =?ISO-8859-1?Q?St=E9phane_Zuckerman?=
a écrit: [...] > > Non mais tu dois le faire exprès, c'est pas possible... Ah ?! > Si en supprimant un fichier .so, qui est l'extension des bibliothèques > chargées /dynamiquement/, firefox-bin ne fonctionne pas, alors c'est qu'il > en est dépendant, non ? Une archive/bibliothèque statique est intégrée Alors pourquoi est-il vraiment compilé en statique / en dynamique ou un mélange des deux ?! > directement au sein du binaire. Le côté "statique" de ton appli est > peut-être dû au fait que si jamais tu lances un thunderbird "statique" > lui aussi, les mêmes bibliothèques seront chargées deux fois. Et encore, > c'est pas sûr. Donc, finalement ? - statique ? - dynamique ? - mélange des deux ? |
|
|
|
#66 |
|
Messages: n/a
Hébergeur: |
Le 25-07-2006, JolinFire <jolinfire@gmail.com> 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: kevin@zipslack:~$ file /sbin/init /sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped ^^^^^^^^^^^^^^^^^ la, statically linked. et oh surprise: kevin@zipslack:~$ ldd /sbin/init not a dynamic executable mais firefox: kevin@zipslack:~$ 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 kevin@zipslack:~$ 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. >>> --enable-application=browser --enable-update-channel=beta >>> --enable-update-packaging --enable-official-branding --disable-debug >>> '--enable-optimize=-Os -freorder-blocks -fno-reorder-functions >>> -gstabs+' --disable-tests --enable-default-toolkit=gtk2 --enable-xft >>> --disable-freetype2 --enable-svg --enable-canvas --enable-static >>> --disable-shared >>> >>> Or, à moins que je sois d'une nullité monstrueuse en anglais, c'est >>> bien une compilation statique. >> >> Tu n'es pas d'une nullité monstrueuse en anglais, mais je n'en dirais >> pas autant pour comprendre une ligne de configure. Usuellement, >> --enable-static a pour effet d'activer la construction des versions >> statique des bibliothèques, en plus de la version dynamique. Ça n'a pas >> d'effet sur l'application elle-même s'il y en a une. > > 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 > > Je vais voir la taille d'un firefox-bin avec une compilation dynamique, > tiens :p -- Kevin |
|
|
|
#67 |
|
Messages: n/a
Hébergeur: |
Le Tue, 25 Jul 2006 15:46:58 +0000, Nicolas George a écrit:
> "JolinFire" , dans le message <44c631cf$0$865$ba4acef3@news.orange.fr>, > 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. |
|
|
|
#68 |
|
Messages: n/a
Hébergeur: |
Le Tue, 25 Jul 2006 16:54:16 +0000, Kevin Denis a écrit:
> Le 25-07-2006, JolinFire <jolinfire@gmail.com> 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: > kevin@zipslack:~$ file /sbin/init > /sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), > statically linked, stripped > ^^^^^^^^^^^^^^^^^ > la, statically linked. et oh surprise: > kevin@zipslack:~$ ldd /sbin/init > not a dynamic executable > > mais firefox: > kevin@zipslack:~$ 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 > kevin@zipslack:~$ 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 ?! |
|
|
|
#69 |
|
Messages: n/a
Hébergeur: |
"JolinFire" , dans le message <44c64e47$0$852$ba4acef3@news.orange.fr>,
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. |
|
|
|
#70 |
|
Messages: n/a
Hébergeur: |
"JolinFire" , dans le message <44c6510c$0$852$ba4acef3@news.orange.fr>,
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. |
|
|
|
#71 |
|
Messages: n/a
Hébergeur: |
JolinFire a écrit :
> Manuel Leclerc a écrit : > > > JolinFire a écrit : > > > > > La mise à jour automatique ne date que de firefox > > > 1.5.0.0, donc novembre 2005. > > > > Sous Windows, la mise à jour automatique sans demander > > son avis à l'utilisateur après une installation par défaut > > (et je dois dire que ça fait un peu bizarre, quand même) > > c'est plus récent je crois mais je peux me tromper. > > 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...) 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, 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 ? -- Hein ? |
|
|
|
#72 |
|
Messages: n/a
Hébergeur: |
JolinFire wrote:
> Le Mon, 24 Jul 2006 18:30:54 +0000, Kevin Denis a écrit : > >> Le 23-07-2006, JolinFire <jolinfire@gmail.com> a écrit : >>> A propos, ton firefox est compilé en dynamique... Car voici le contenu >>> d'un firefox compilé en statique : >>> >>> Et quand j'essaye la commande ldd, j'ai droit à un : >>> >>> fred@fredo:~/Applications/firefox$ ldd ./firefox >>> not a dynamic executable >> Amha, tu ne verifies pas le bon fichier: kevin@zipslack:/usr/src/firefox$ >> file firefox firefox: Bourne shell script text executable >> kevin@zipslack:/usr/src/firefox$ file firefox-bin firefox-bin: ELF 32-bit >> LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses >> shared libs), stripped >> >> Alors, oui, un script shell n'est pas un executable dynamique.. > > Oups... > > Voici le résultat en utilisant le bon fichier - j'irais me flageller avec > une boite de Windows XP après - et un minefield vieux de 2 jours environ : > > ldd Applications/firefox/firefox-bin > Applications/firefox/firefox-bin: /usr/lib/libnss3.so: version `NSS_3.11.1' not found (required by Applications/firefox/firefox-bin) > 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) > libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb7c3d000) > libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb7c24000) > libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb7ba7000) > libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb7b92000) > libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb7b8a000) > 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) > libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb7af2000) > libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb7aac000) > libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7aa9000) > libX11.so.6 => /usr/lib/libX11.so.6 (0xb79c3000) > libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb798a000) > libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7906000) > 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) > libXft.so.2 => /usr/lib/libXft.so.2 (0xb76ff000) > libz.so.1 => /usr/lib/libz.so.1 (0xb76eb000) > libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0xb76e5000) > libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb76c0000) > 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 il en faut des libs pour lancer un navigateur LEGER ![]() |
|
![]() |
| Outils de la discussion | |
|
|