Gambas France BETA


Pas de compte ? Incription

Exe.Gambas....

1
AuteurMessages
Foromus#1 Posté le 11/11/2015 à 11:18:29
A propos de Exe.Gambas...

Finalement, je me rends compte que je ne comprends plus rien, alors que je croyais avoir compris un peu quelque chose.
Résumons : Gambas est un langage interprété. Ce qui signifie que chaque ligne de code est traduite puis exécutée au fur et à mesure qu'elle est sollicitée. Jusque-là, j'ai bon ?
Dans ces conditions, à quoi sert l'exe, hormis le fait (fort utile), de n'avoir pas à lancer l'IDE pour exécuter un programme ?
Pour les autres langages - et c'était le cas pour Visual Basic, on "compilait" pour traduire le code en langage machine, ce qui n'est pas le cas en Gambas si j'en crois ce que j'ai lu. Dans ces conditions, à quoi servent les commandes "Compiler" et "Tout compiler" dans l'IDE ? Pour moi, et pour Mr Littré qui a rédigé un dictionnaire, compiler consiste à mettre ensemble différentes parties de manière à obtenir un tout homogène, je dirais que c'est en quelque sorte une synthèse, après, que le terme ait été employé pour la traduction en langage machine d'un programme informatique, Mr Littré n'en parle pas...
Donc, question(s) : compiler du Gambas, c'est quoi ?
Pour les exe : je ne sais pas comment font les autres, mais moi, quand je veux utiliser un projet, je fais un exe.gambas, et pour ce faire, je vide totalement le répertoire du projet de tous ses sous-répertoires avant de créer l'exe. Si je ne procède pas ainsi, j'ai des exe totalement boulimiques, et dont l'obésité me fait frémir. En déplaçant tous mes sous-répertoires, j'obtiens un exe taille mannequin, ce qui correspond mieux à ma logique (toute personnelle, je le reconnais).
Maintenant, je m'inquiète quand même du passage du lancement par F5 et du .gambas, car il apparaît des différences notoires. Et ça, ça m'agace sérieusement. Ainsi, j'ai, par exemple, un projet avec deux boutons superposés, de manière à utiliser le son ou pas. Ces deux boutons ont un image, celle classique du HP seul ou du HP barré de rouge, donc, du banal. J'ai la même configuration sur deux formulaires, fonctionnant sensiblement de la même façon, et à ma grande surprise, dans l'un les images étaient affichées, dans l'autre, non. Je précise que cela en mode conception, donc, lancement pas F5 ou la flèche en haut. Après bidouilles, j'ai obtenu la visibilité pour les deux, ce qui était le but recherché. Mais le plus curieux, c'est que, à partir du moment où je fais un exe.gambas, les images sur les boutons ne sont plus affichées, ni sur une feuille, ni sur l'autre. Dommage, d'autant que dans ce cas, on ne sait pas à quoi servent les boutons... Ni lequel est affiché, car ils fonctionnent en alternance !
Bon, je dois dire que j'ai toujours une angoisse profonde et véritable quand arrivent les traditionnelles 86 mises à jours... Là, je sais que c'est Gambas, avant d'ouvrir le gestionnaire concerné. Et souvent, j'ai encore les 86 le lendemain, vu que pendant la nuit, des erreurs ont été relevées et corrigées par les concepteurs : ce qui montre leur degré de réactivité. Je me promets toujours que je vais courageusement bloquer les mises à jour pour me contenter de ce dont je dispose, pourtant, je continue à me stresser, je dois être un peu maso...
Pour revenir aux soucis avec les exe et les nouvelles versions, on trouve des choses curieuses. J'avais déjà posté ici, parce que j'avais eu des différences significatives avec le composant "slider", j'en avais rajouté un ou deux sur un formulaire, et ça avait merdé pas mal, je ne me souviens plus comment je m'en étais sorti. Je remarque aussi les couleurs de boutons qui sont traitées d'une manière assez fantaisistes, les boutons restent blancs dans l'IDE, et se colorent dans l'exe : Il y a sûrement de bonnes raisons... Que je ne connais pas...
En définitive, je reste désolé de ne pas maîtriser ces différences de fonctionnement et espère toujours une correction possible, au fond, c'est pour ça que je continue à accepter les MàJ.
Concernant le problème du déplacement intempestif du curseur de la souris, j'avais posté à ce sujet, je ne sais pas si il a été résolu. J'ai contourné le souci en passant par un timer de quelques ms qui remettait à la bonne place le délinquant, mais c'est quand même une solution un peu bâtarde, à mon sens, ça ne fait pas sérieux.
Bon, voilà quelques soucis ici exposés, et comme c'est un peu en vrac, je poste en "Café", histoire de causer comme on cause. Mais qu'on ne se méprenne pas sur ma pensée profonde : j'aime bien Gambas, j'ai été vraiment heureux de trouver ce langage tournant sous Linux quand j'ai migré, car je déplorais quand même vraiment la perte de VB, et si j'ai du réécrire tous mes projets (fort peu nombreux en vérité), ça n'a pas été une punition !
Encore merci à tous les concepteurs et à tous ceux qui aident !
Flachy Joe#2 Posté le 11/11/2015 à 12:07:22
Iguane : Il Gambas Uniquement pour Activer ses NEuronesSalut,
la compilation génère du bytecode qui est interprété. L'"exécutable" .gambas est en fait passé à interpréteur de bytecode.
Si tu regardes la liste des processus quand tu lances un tel fichier, tu trouves "gbr3" et pas de "machin.gambas".
Le lien entre les 2 se fait par l'intermédiaire du hash-bang
#! /usr/bin/env gbr3
qui constitue la première ligne du fichier .gambas et qui est lu lors du lancement.
C'est pourquoi il faut installer le paquet "gambas3-runtime" sur les machines sur lesquels tu veux faire tourner tes exécutables.
;) Flachy Joe ;)
didier18#3 Posté le 11/11/2015 à 17:16:03
Bonjour

@Foromus : Le souci que tu évoques avait déjà été soulevé en d'autres temps...
http://www.gambasforge.org/sujet-4402-runtime-ou-autre-chose--page-1.html#m1
J'ai joué le 'doublonneur' ici :
http://www.gambasforge.org/sujet-4622-pourquoi-gambas-a-t-il-besoin-de-gambas-pour-fonctionner.html

Bonne lecture.
1