Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Vos tutoriels et astuces


Index du Forum » Vos tutoriels et astuces » Tutoriels d'utilisation de gint (commentaires)
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Tutoriels d'utilisation de gint (commentaires)

Posté le 15/07/2017 13:54

Les tutoriels d'utilisation de gint sont sur ce topic.

Pour garder les tutoriels ensemble dans les posts du topic d'origine (et surtout pas créer un topic par tuto...), je vous propose de poster vos questions/commentaires/etc ici. Merci !


1, 2, 3, 4 ··· 10 ··· 20 ··· 25, 26, 27 Suivante
Hackcell Hors ligne Maître du Puzzle Points: 1532 Défis: 11 Message

Citer : Posté le 17/07/2017 01:07 | #


Vu que le fxSDK n'est pas un IDE, c'est quoi du coup, un linker, une sorte de bibliothèque, un regroupement d'alias, etc ?
Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 17/07/2017 01:26 | #


Un SDK

C'est comme le sdk de casio : tu écris ton code sous ton éditeur préféré et tu compiles avec le sdk. (enfin j'imagine)
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 17/07/2017 09:09 | #


SDK signifie « Software Development Kit », c'est-à-dire un ensemble d'outils permettant de développer des programmes. Ça, c'est ce que le fxSDK est. Le fxSDK est en ligne de commande mais ce n'est pas nécessaire à la définition.
IDE signifie « Integrated Development Environment », c'est-à-dire un environnement (logiciel graphique) de développement qui intègre tous les outils nécessaires au développement dans son interface. Le Projet Unicorn d'Intelligide est un IDE, malheureusement je ne trouve plus le topic (des choses ont été supprimées).

Le linker, non, c'est GNU ld. La bibliothèque, c'est plutôt gint, pour gérer l'exécution sur la calculatrice. le fxSDK est plus proche d'un groupe d'alias, mais ça fait quand même un peu plus : conversion, désassemblage, des choses comme ça. Il contient des programmes entièrement « nouveaux ».
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Hackcell Hors ligne Maître du Puzzle Points: 1532 Défis: 11 Message

Citer : Posté le 17/07/2017 14:58 | #


Le premier tuto etait vraiment sympa (si tu crois que l'on a pas vu que c'etait de la propagande pour nous apprendre à coder proprement x) ), de plus il permet dirrectement de cerner les possibillités de gint du fait de l'utilisation d'un exemple concret.

Et puis encore bravo au vu de la quantité de travail que ça représente pour toi, alors que tu pouvais simplement balancer gint sans plus d'explication.
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 17/07/2017 15:02 | #


En vérité, je comptais en parler plus tard mais le tuto est aussi un peu sur la programmation de jeux vidéos. J'ai que des connaissances empiriques dessus, issues de mes propres tests, donc je voulais pas affirmer ouvertement que ce que je propose est une exemple à suivre, mais l'idée est de montrer des méthodes simples pour effectuer des tâches classiques sans utiliser IsKeyDown() et affiliés.

Je sais bien que quasiment personne n'aura envie de se coltiner la doc dans les headers alors si je veux que la lib' soit utile, il faut bien que j'y mette les moyens. Merci !
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Theprog Hors ligne Membre Points: 1447 Défis: 20 Message

Citer : Posté le 01/08/2017 23:56 | #


Salut,

En tant que débutant sur Linux et donc dans les lignes de commande je galère un peu
Donc voilà en suivant le tutoriel (qui est d'ailleurs très bien fait), je me suis surtout rendu compte de l'importance du Makefile Seulement, c'est assez compliqué de bien comprendre les tutoriels qui parte vite loin et que j'ai du mal a comprendre en tant que débutant ou qui traitent souvent de cas (trop) simple (un fichier, voir deux, mais pas tout ce qui est engendré ici comme les assets ou autre).
Du coup, est-ce que ça serait possible d'avoir un petit topo ou en tout cas un exemple de Makefile histoire que j'ai un peu une idée de vers où aller en connaissant les commandes puisque je les ai utilisée dans le tutoriel ?
Ninestars Hors ligne Membre Points: 2462 Défis: 24 Message

Citer : Posté le 02/08/2017 00:11 | #


+1 ^^'
Cakeisalie5 En ligne Ancien administrateur Points: 1963 Défis: 11 Message

Citer : Posté le 02/08/2017 01:02 | #


Voilà un tutoriel rapide sur GNU make.
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 02/08/2017 17:01 | #


Passage rapide ; merci pour le tuto, Cake, ça aide (beaucoup, tu me sauves la vie en fait ) !

Pensez-vous qu'ajouter une fonctionnalité au fxSDK pour genrérer des Makefile à partir de fichiers de projets (indiquant où sont les sources, headers, assets, etc) soit utile ou intéressant ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Theprog Hors ligne Membre Points: 1447 Défis: 20 Message

Citer : Posté le 04/08/2017 12:40 | #


Personnellement, je trouve ça intéressant de faire son propre Makefile avec l'aide d'un tutoriel, mais bon après c'est vrai que c'est un certain confort d'avoir un Makefile généré automatiquement. Après, je vois pas trop ce qui change d'un projet à l'autre dans le makefile en dehors des noms, versions, date...
Cakeisalie5 En ligne Ancien administrateur Points: 1963 Défis: 11 Message

Citer : Posté le 04/08/2017 12:45 | #


La structure du projet, notamment dans l'organisation des données. Est-ce que tu veux permettre les src/sousdossier/coucou.c ? Est-ce que tu préfères avoir les fichiers source dans la racine ? Est-ce que tu veux avoir un dossier objet séparé ou non ? Est-ce que tu veux utiliser .font.bmp ou plutôt avoir un dossier fonts/ où tous les .bmp sont des fonts ? Et si tu veux générer un index automatiquement (comme moi dans Tu Quoque) ? Ou même des fichiers source dans un langage que t'inventes (comme les niveaux dans Tu Quoque, qui sont une grille de caractères représentant les tiles) ?

Y a plein de choses que tu peux faire. Après, tout le monde ne veut pas forcément se casser la tête.
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 04/08/2017 13:35 | #


Si je reprends les exemples que tu as donnés, Cake :
- Permettre un parcours récursif des dossiers de sources (potentiellement individuel) ;
- Permettre le recoupement des dossiers de sources et d'en-têtes ;
- Utiliser une wildcard pour repérer les polices parmi les assets ;
- Configurer des scripts pour convertir des ressources additionnelles (si j'ai bien compris) ;
Le coup de l'index, j'ai pas tout suivi. Tu peux préciser ?

Tout ceci sont des fonctionnalités de base d'un tel outil, s'il est bien conçu. À l'inverse, le Makefile en question peut gérer les dépendances automatiques, afficher des messages sympa, gérer le numéro de version via un fichier, tout plein de trucs fastidieux à faire soi-même quand on sait les faire, et passablement compliqués dans le cas contraire.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Cakeisalie5 En ligne Ancien administrateur Points: 1963 Défis: 11 Message

Citer : Posté le 04/08/2017 13:55 | #


Le coup de l'index, c'est pour générer des index d'objets. Donc par exemple, on a fait trois maps, avec les symboles _map_a_data, _map_a_entities, _map_b_data, ..., _map_c_entities, bah il est utile de générer un index (en C par exemple) :

#include <gen_index.h>

struct index_entry map_entries = {
    {"a", _map_a_data, _map_a_entities},
    /* ... */
    {"c", _map_c_data, _map_c_entities}
};


Mais pour préparer le coup des ressources additionnelles, bon courage, parce que c'est chaud, surtout si tu veux "optimiser" le Makefile final
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 04/08/2017 14:00 | #


C'est pas si compliqué. Il te suffit de déclarer dans le fichier du projet une commande de conversion pour un type de fichier identifié par un dossier d'entrée et une wildcard, et de mettre un script shell derrière la commande pour générer l'index. Il n'y a pas de dépendances à mettre à jour car l'index n'a besoin d'être régénéré que si une des maps change, et si elle change elle devra être reconvertie, ce qui régénérera l'index comme side-effect.
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Cakeisalie5 En ligne Ancien administrateur Points: 1963 Défis: 11 Message

Citer : Posté le 04/08/2017 14:14 | #


Bon courage alors \o/
Respirateur d'air, BDFL de Cahute, des utilitaires de communication pour calculatrices CASIO.


Mon blogMes autres projets
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 13/08/2017 22:32 | # | Fichier joint


Désolé de faire attendre les gens intéressés par la suite des tutos. Je suis pris à réfléchir sur un gameplay à la fois simple à mettre en oeuvre (histoire qu'il n'y ait pas 30 pages de code à chaque post), et suffisamment complet pour être intéressant.

Je dois aussi faire les spritesheets et les maps si on vaut pouvoir sortir du menu principal, et comme vous pouvez le voir, c'est pas de tout repos... x)





Donc je suis pas mort, mais je nage un poil niveau délais !
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kiwimou Hors ligne Membre Points: 16 Défis: 0 Message

Citer : Posté le 08/12/2018 15:37 | #


Bonjour ! J'ai un soucis avec cette commande : sh3eb-elf-gcc build/main.o -o build/moisland.elf fxsdk --cflags --libs
Elle me donne cette erreur : /lib/gcc/sh3eb-elf/7.3.0/../../../../sh3eb-elf/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 08/12/2018 15:39 | #


As-tu bien installé libgcc dans le tutoriel d'installation de GCC ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Kiwimou Hors ligne Membre Points: 16 Défis: 0 Message

Citer : Posté le 08/12/2018 15:42 | #


Oui
Lephenixnoir En ligne Administrateur Points: 24634 Défis: 170 Message

Citer : Posté le 08/12/2018 15:44 | #


Essaie la commande suivante. Si ça renvoie "libgcc.a" au lieu d'un chemin complet, c'est que quelque chose s'est mal passé.

% sh3eb-elf-gcc -print-file-name=libgcc.a
/home/el/opt/sh3eb-elf-2.31.1-8.2.0/lib/gcc/sh3eb-elf/8.2.0/libgcc.a

Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
1, 2, 3, 4 ··· 10 ··· 20 ··· 25, 26, 27 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 115 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd