Questions de base sur PB

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
cage
Messages : 506
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Questions de base sur PB

Message par cage »

Bonjour,
Voici 2 questions parmi d'autres que je me pose concernant PureBasic
Question1:
Quand on télécharge une version de PB, on obtient par exemple le fichier
  • PureBasic_5_41_x64_LTS_(fg28zy).exe
Que veulent dire les chiffres et le lettres entre parenthèses.
Question2:
Dans mes projets PB, j'inclus des fichiers comme ceci

Code : Tout sélectionner

XIncludeFile "..\pb-include.pb"
Ce fichier contient des procédures, des constantes, des variables,...
Si mon projet n'utilise pas toutes les procédures, constantes, variables, etc que se passe-t-il lors de la compilation.
Les procédures et les variables sont-elles incluses dans le programme compilé ou le compilateur sait-il faire le tri.
Gérard
■ Win10 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.00 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Re: Questions de base sur PB

Message par Anonyme2 »

A la 1ere question je n'ai pas de réponse, j'ai une idée mais ce n'est qu'une idée.

Pour la seconde, PB n'utilise que les procédures qui sont réellement appelées dans le code, celles déclarées mais non utilisées ne sont pas compilées.

Réponse de Fred sur le forum anglais ici (réponses sur le forum fr ?):
http://www.purebasic.fr/english/viewtop ... =3&t=63394

Pour le reste, si des variables sont déclarées, elles seront vraimement déclarées dans le code final (si je me souviens bien).
Les constantes sont remplacées à la compilation par la valeur donc on peut en déclarer autant que l'on en veut.
Dernière modification par Anonyme2 le dim. 27/déc./2015 8:07, modifié 1 fois.
Avatar de l’utilisateur
majikeyric
Messages : 602
Inscription : dim. 08/déc./2013 23:19
Contact :

Re: Questions de base sur PB

Message par majikeyric »

Autant que je sache les procedures même non utilisées sont dans l'exe final.
Denis, ton lien vers le post de Fred est erroné.
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Re: Questions de base sur PB

Message par Anonyme2 »

Merci majikeyric

j'ai corrigé le lien.


Je viens de faire un essai et si la procédure n'est pas appelée, elle n'est pas incluse dans le fichier asm donc dans l'executable.
Avatar de l’utilisateur
cage
Messages : 506
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: Questions de base sur PB

Message par cage »

Merci a vous deux pour votre réponse.
J'ai lu le lien du forum anglais, la discussion semble ouverte et les avis partagés.
Cela m'a donné l'idée de faire quelques tests de mon coté en utilisant ou pas les procédures et de regarder la taille de l'exécutable généré.
Pour la question1, une personne lisant ce post aura peut-être la réponse.
Bonnes fêtes a tous.
Gérard
■ Win10 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.00 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
Micoute
Messages : 2522
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Questions de base sur PB

Message par Micoute »

Les chiffres genre (fg28zy) dans le nom du fichier de téléchargement sont générés automatiquement et Fred n'y est absolument pour rien !
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.73 PB 6.00 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
majikeyric
Messages : 602
Inscription : dim. 08/déc./2013 23:19
Contact :

Re: Questions de base sur PB

Message par majikeyric »

J'avais du mal à le croire alors moi aussi j'ai zieuté l'ASM généré en fonction de l'utilisation de certaines procédures ou pas.
Effectivement le compilateur n'inclut pas le code des procédures inutilisées !
Je ne pensais pas qu'il offrait ce genre d'optimisation!

PB est vraiment génial !!! A quand la reconnaissance et le succès qu'il mérite ??!
Avatar de l’utilisateur
Micoute
Messages : 2522
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Questions de base sur PB

Message par Micoute »

C'est là tout l'attrait des bibliothèques utilisateurs, car le compilateur ne compile justement que les procédures ou autres objets PureBasic dont il a besoin dans l'éxécutable, ce qui permet d'avoir des programmes compilés très courts !
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 5.73 PB 6.00 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Répondre