π
<-
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

Unread postby Epharius » 19 Jul 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
User avatar
EphariusPremium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.1%
 
Posts: 1015
Images: 4
Joined: 08 Dec 2014, 17:38
Gender: Male
Calculator(s):
Class: ENSIMAG

Re: Creation d'une lib C - LLVM

Unread postby MateoConLechuga » 19 Jul 2020, 17:53

Toolchain libraries will never be supported as compiling directly from C code.
User avatar
MateoConLechugaVIP++
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 59%
 
Posts: 49
Joined: 12 Oct 2015, 21:56
Gender: Male
Calculator(s):
GitHub: mateoconlechuga

Re: Creation d'une lib C - LLVM

Unread postby Adriweb » 19 Jul 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é.
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 54.6%
 
Posts: 12973
Images: 1087
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
Class: (ingénieur)
Twitter: adriweb
GitHub: adriweb

Re: Creation d'une lib C - LLVM

Unread postby Epharius » 20 Jul 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
User avatar
EphariusPremium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.1%
 
Posts: 1015
Images: 4
Joined: 08 Dec 2014, 17:38
Gender: Male
Calculator(s):
Class: ENSIMAG


Return to Problèmes divers / Aide débutants

Who is online

Users browsing this forum: No registered users and 6 guests

-
Search
-
Featured topics
L'OS 5.5 de la TI-83 Premium CE / 84 Plus CE supprime l'assembleur - la plupart des jeux et certains programme ne fonctionneront plus
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
479 utilisateurs:
>473 invités
>0 membre
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)