π
<-
Chat plein-écran
[^]

Creation d'une lib C - LLVM

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

Creation d'une lib C - LLVM

Message non lude Epharius » 19 Juil 2020, 15:50

Coucou tout le monde,

Certains le savent, je suis en train de faire une librairie C. Me voilà à la "presque" fin du développement, et je fais face à un petit problème.
J'aimerais passer du stade "Fonction main() qui utilise les fonctions que j'ai créées" à "librairie en deux parties : 1 .h à importer dans le projet et 1 .8xv a transférer à sa calcu pour utiliser les fonctions", mais je n'ai aucune idée de comment faire ça avec la toolchain ?

J'imagine en effet que c'est très différent de la création d'une lib C en règle générale (.so). De plus, je n'ai pas réussi à trouver de lib C faite en C dans la toolchain, sur laquelle j'aurais pu copier.
Mon intuition me dit qu'il faut que :
  • Je crée un .lib pour exporter mes fonctions à LibLoad
  • Je crée un deuxième .h en enlevant toutes les fonctions static et où je ne garde que les struct/fonctions utilisable dans la lib
  • Mais comment créer le .8xv à mettre sur la calculatrice comme pour les autres lib C ? Y a-t-il un Makefile pour ça ?
  • Et y a-t-il autre chose à faire ?

Pour info j'ai compilé moi-même la toolchain pour avoir accès à la branche LLVM. Je tourne sous Linux Mint.

Merci des infos que vous pourrez m'apporter 8-)
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7.1%
 
Messages: 1110
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: Creation d'une lib C - LLVM

Message non lude MateoConLechuga » 19 Juil 2020, 17:53

Toolchain libraries will never be supported as compiling directly from C code.
Avatar de l’utilisateur
MateoConLechugaVIP++
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Prochain niv.: 60.5%
 
Messages: 50
Inscription: 12 Oct 2015, 21:56
Genre: Homme
Calculatrice(s):
MyCalcs profile
GitHub: mateoconlechuga

Re: Creation d'une lib C - LLVM

Message non lude Adriweb » 19 Juil 2020, 17:55

Voila... et donc tout ce que tu ferais sera manuel, et le rendu devra calquer une lib existante faite a la main en ASM (avec les "include", "library", "export"...)
Cf. une petite lib : https://github.com/CE-Programming/toolc ... rc/keypadc mais j'imagine que tu as déjà regardé.
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.2%
 
Messages: 14615
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Creation d'une lib C - LLVM

Message non lude Epharius » 20 Juil 2020, 20:41

Ok ça marche ! Oui en effet ma question était "Y'a-t-il un moyen de passer du C à une lib C avec la toolchain".
Du coup ouais je vais me débrouiller je devrais m'en sortir, je passe du C à l'asm avec la toolchain, je fais quelques modifs dans le code (entre autre j'enlève le main etc) et ensuite j'assemble en .8xv avec fasmg + donne un .lib dans le dossier de libload et un .h pour que les programmes puissent utiliser la lib.

Merci pour vos réponses ;)
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7.1%
 
Messages: 1110
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav


Retourner vers Problèmes divers / Aide débutants

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 26 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1250 utilisateurs:
>1216 invités
>29 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)