Gambas France BETA


Pas de compte ? Incription

D'une machine à l'autre

1
AuteurMessages
Foromus#1 Posté le 8/5/2013 à 09:18:54
Bonjour à tous,

Par le passé (que je ne saurais dater...), je pouvais créer un projet sur ma machine de bureau, celle qui me sert au quotidien, et faire tourner le projet.gambas sur mon portable, lequel ne me sert que de back up, c'est à dire, très peu utilisé.
Donc, soit MonProjet.Gambas, avec ses répertoires et fichiers associés si besoin est. Tout cela élaboré sur ma machine de bureau.
Ensuite, il me suffisait de copier / coller MonProjet.Gambas dans le répertoire adéquat de mon portable, répertoire lui aussi déjà complété par les répertoires et fichiers associés.
Depuis un "certain temps", la méthode ne fonctionne plus... Un message d'erreur me dit que le projet "n'existe pas"... Dommage, c'était pratique.
Ma solution actuelle consiste à utiliser le parcours suivant :
Dès que mon projet me paraît convenable, je lui demande de générer un exécutable et un pack et tar.gz. Je recopie le tar.gz dans un répertoire temporaire sur mon portable, de là, j'extrais et je lance Gambas, et sans même le faire tourner, je génère un exécutable, lequel est alors parfaitement identique au premier élaboré sur la machine de bureau, mais celui-là daigne tourner sur le portable.
Bon, vous me direz que ce n'est pas très long, juste un peu gênant, mais ça colle.
Bien entendu, le portable a exactement le même OS que la machine de bureau, et reçoit les mêmes MàJ, par la même connexion. Il a à peu près les mêmes programmes également, ce qui me permettrait de l'utiliser en cas de panne de la machine de bureau.
Bon, maintenant, ce sont deux machines différentes, cela dit, j'avais demandé sur le forum Ubuntu si il y avait problème à changer quelques composants, on m'avait répondu que ça n'avait pas tellement d'importance, l'OS "se débrouille" avec ce qu'il trouve.
Non, moi, ce que je trouve bizarre, c'est que la transportation a bien fonctionné pendant des mois (années..), et que maintenant,il faille passer par un chemin un peu détourné.
Ce sujet ne demande pas de réponse (encore qu'elle serait bienvenue...), seulement une explication !

Après m'être relu (ce que je fais toujours avant de poster, et souvent plusieurs fois...), j'ai pensé à la chose suivante :
Comment faites-vous pour générer un exécutable ?..
Parce que, si on se contente de cliquer sur le menu qui le propose, l'exe va englober tous les sous-répertoires avec leurs fichiers. Et pour peu qu'on ait des fichiers volumineux, comme avec des photos ou vidéos par exemple, on se retrouvera avec un exe d'une obésité ingérable.
Pour contourner ce problème, j'ai pris l'habitude de créer un sous-repertoire "Anex", au répertoire du projet en cours, et dans ce sous-répertoire Anex, je colle tous les autres. Ainsi, quand je veux générer, et l'exe et le tar.gz, je déplace l'Anex dans un répertoire temporaire, et j'effectue l'opération, ce qui me donne deux fichiers à une taille décente. Je viens donc subitement de penser que la complication pourrait venir de là, encore que, rien n'est moins sûr, puisque, sur le portable, je décompresse l'archive, je l'ouvre avec Gambas - il n'y a donc pas d'Anex, et je génère l'exe.
Bref, je suis sûr d'une chose c'est que je ne suis sûr de rien...

Merci de m'avoir lu !

gambix#2 Posté le 8/5/2013 à 22:26:44
Faire simple !Je vais faire cour... ne met rien d'inutile dans le projet... c'est a dire dans le dossier qui contient le fichier .project. En gros ce dossier c'est ton executable.

pour faire ce que du veux opte pour un sur-dossier

MonProjetGlobal
--MonProjet
--video.mp4
--Texte.txt

Moins de texte dans une signature c'est agrandir son espace.
Foromus#3 Posté le 9/5/2013 à 11:19:47
Bonjour,

A mon avis, je ne mets rien d'inutile dans le répertoire qui contient le projet. Cela dit, je pourrais mettre les fichiers annexes dans un autre répertoire, et celui du projet ne contiendrait, effectivement que l'exécutable. Si j'ai opté pour la solution du sous-répertoire, c'est simplement parce que, dans l'application, je peux alors utiliser le chemin "Application.Path, & "/ le reste", ce que je trouve assez simple. Autrement, il faudrait alors que je fasse un répertoire "Esembleduprojet", lequel contiendrai les sous-répertoires "MonProjet", un autre "Mes données 1, etc. Finalement, ça ne serait peut-être pas une mauvaise solution, je n'y avais pas pensé. A expérimenter !

Et autrement, côté "jardin", vous avez quelque chose ?...
gambix#4 Posté le 9/5/2013 à 13:28:42
Faire simple !jardin ?
Moins de texte dans une signature c'est agrandir son espace.
SplugenBrau#5 Posté le 15/5/2013 à 09:18:46
the simpler, the strongerBonjour Foromus.
Selon moi les plus nombreuse versiones de Gambas tiennent leurs parties compilées du Project, dans un seul repertoir mais avec l'atrib: "hidden". C'est pourquoit le S.O. Ubuntu n'a pas le droit de le
lire, donc pas copier/coller.
Cela quelque fois me pose la question:"Aurais-je reussi a laisser une bonne copie de mon project sur La Forge?".
Bonne idée de comprimer par un .tar.gz
Une autre solution saurait de sauver le project sur une USB-penne directement par l'IDE de Gambas et le reouvrir et re-sauver par le meme IDE du portable.
Une autre sample solution c'est de donner les sources.
Salut.
Foromus#6 Posté le 16/5/2013 à 08:52:54
Bonjour SplugenBrau,
Et aussi aux autres....

Bien sûr, les parties du Projet sont en fichiers cachés. Cependant, je ne sais pas si l'OS Ubuntu va les ignorer pour autant.
Ma remarque est partie du fait que, autrefois, le copier / coller du projet.gambas d'une machine à l'autre fonctionnait, et que maintenant, ça ne marche plus. Je note quand même que je pense qu'à l'époque où ça fonctionnait, j'utilisais Ubuntu, avec son interface Gnome, alors que maintenant, j'utilise Xubuntu, avec son interface Xfce. Pas obligé que ce soient les mêmes réactions, même si je suppose que le noyau est le même (mais je n'ai pas la compétence pour en parler).
L'idée de sauver le projet sur une clé USB, et de le rouvrir sur le portable est une solution, mais je ne sais pas si c'est vraiment plus simple et plus intéressant que de passer par un .tar.gz, de toute façon, je génère systématiquement un .tar.gz à chaque modification de manière à toujours avoir une copie de sécurité. Après, et j'utilise une clé USB pour transférer sur le portable, et la décompression ne me prend qu'un clic de souris, j'ai même prévu un dossier TempTransf strictement dédié.
Mais comme je n'utilise pratiquement pas le portable, principalement destiné aux copies de sécurité, ce n'est pas un gros souci !
gambix#7 Posté le 16/5/2013 à 10:48:52
Faire simple !Le soucis est simple tu te doit d'utiliser les mêmes versions sur les deux pc
Tu ne peu pas compiler sur un version plus récente et exécuter sur une vieille... imagine le s écarts entre rien que la 3.0 et la 3.2... par exemple gb.map. n'existait pas
Moins de texte dans une signature c'est agrandir son espace.
Foromus#8 Posté le 16/5/2013 à 13:08:09
Bien sûr Gambix, cela va de soi !..
Et en conséquence, non seulement j'ai exactement les mêmes versions sur mes deux machines (déjà spécifié plus haut), mais je prends bien soin de toujours installer toutes les dernières mises à jour avant de faire quoi que ce soit. Du reste, avec Ubuntu, les MàJ sont présentées automatiquement, je n'ai donc aucun mérite ! D'accord, vous me direz que quand j'allume le portable, il faut aussi que je le connecte à internet, ce que je fais car, ne l'utilisant que très peu, je me retrouve parfois avec plus d'une centaine de MàJ d'un seul coup ! Le portable est donc systématiquement mis à jour dès que je l'utilise.
gambix#9 Posté le 16/5/2013 à 22:00:34
Faire simple !Tu as essayé
gbr3 monprojet.gambas
Moins de texte dans une signature c'est agrandir son espace.
SplugenBrau#10 Posté le 17/5/2013 à 11:57:37
the simpler, the strongerL'example suivant marche sous Xubuntu 12.4.




$ sudo chown root /usr/bin/tarcpy.sh
$ sudo chown root /usr/bin/tarpaste.sh
$ sudo chgrp votrenom /usr/bin/tarcpy.sh
$ sudo chgrp votrenom /usr/bin/tarpaste.sh
$ sudo chmod 575 /usr/bin/tarcpy.sh
$ sudo chmod 575 /usr/bin/tarpaste.sh
$ sudo mkdir /mytmp
$ sudo chown root /mytmp
$ sudo chgrp votrenom /mytmp
$ sudo chmod 474 /mytmp

On ne peut pas écrire mytmp à l'interieur de /tmp parce-que
tous ce qui il y a contenu
sera effacé pendant l'arrête de l'ordinateur.
1