π
<-

Problème avec le C et MSYS

C, C++, ASM...

Problème avec le C et MSYS

Unread postby Chockosta » 10 Apr 2011, 10:35

Bonjour...

Je vais recevoir ma TI-Nspire dans deux jours, je prends donc un peu d'avance.
J'ai essayé de commencer la prog en C, après m'être familiarisé avec l'interface de la calculatrice.
Seulement, pour compiler, il est dit d'installer MSYS. Or cet outil n'accepte pas les espaces dans les noms, et mon ordi en est rempli. Cet ordi est partagé avec toute ma famille, donc je ne peux pas tout changer pour MSYS. Y a-t-il donc un moyen de compiler sans ?
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Problème avec le C et MSYS

Unread postby Bisam » 10 Apr 2011, 11:32

Ne peux-tu pas l'installer sur une clé USB ?
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: Problème avec le C et MSYS

Unread postby Chockosta » 10 Apr 2011, 11:40

Oui, merci de ton aide :).
C'est en effet bien plus simple.

J'ai réussi à compiler un hello world ! Supeeer...
Mais quand je veux faire quelque chose d'un peu plus sérieux, MSYS m'insulte aimablement :
Image

Le code en C :
Code: Select all
#include os.h
#include common.h
#include "utils.h"
asm(".string "PRG"n");

int main (void)
{
    unsigned intmask = TCT_Local_Control_Interrupts(0);
   show_msgbox ("Hello Word", "Hello Word");
   TCT_Local_Control_Interrupts(intmask);
    return 0;
}


Le makefile :
Code: Select all
GCC = nspire-gcc
LD = nspire-ld
GCCFLAGS = -Os -nostdlib -Wall -W -marm
LDFLAGS = -nostdlib
OBJCOPY := "$(shell which arm-elf-objcopy 2/dev/null)"
ifeq (${OBJCOPY},"")
   OBJCOPY := arm-none-eabi-objcopy
endif
EXE = try.tns
OBJS = try.o
DISTDIR = ../
vpath %.tns $(DISTDIR)

all: $(EXE)

%.o: %.c
   $(GCC) $(GCCFLAGS) -c $

$(EXE): $(OBJS)
   $(LD) $(LDFLAGS) $^ -o $(@:.tns=.elf)
   mkdir -p $(DISTDIR)
   $(OBJCOPY) -O binary $(@:.tns=.elf) $(DISTDIR)/$@

clean:
   rm -f *.o *.elf
   rm -f $(DISTDIR)/$(EXE)


Je comprends pas le rapport d'erreur. Une mauvaise installation ?
Quelqu'un comprend-il ?
Merci par avance...

EDIT : Ca a l'air d'un problème de linkage. Le compilo ne reconnait même pas la division et le modulo.
J'ai réussi à compiler (sans opération autre que l'addition ni boîte de dialogue)
Code: Select all
#include os.h
#include common.h
#include "utils.h"
asm(".string "PRG"n");

int main (void)
{
    int i,j;
    unsigned intmask = TCT_Local_Control_Interrupts(0);
   clearScreen();
   while (!isKeyPressed(KEY_NSPIRE_ESC))
   {
       for (i=0; i100; i++)
       {
           for (j=0;j100;j++)
           {
               setPixel (j,i,8);
           }
       }
   }
   TCT_Local_Control_Interrupts(intmask);
    return 0;
}


Ca affiche un beau rectangle gris sur l'émulateur... :#roll#:
C'est étrange, ce problème de linkage...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Problème avec le C et MSYS

Unread postby critor » 10 Apr 2011, 13:23

Chockosta wrote:Oui, merci de ton aide :).
C'est en effet bien plus simple.

J'ai réussi à compiler un hello world ! Supeeer...
Mais quand je veux faire quelque chose d'un peu plus sérieux, MSYS m'insulte aimablement :
Image



J'ai commencé à voir apparaître ces erreurs ("unknown mandatory eabi...") quand je suis passé de Ndless 1.7 à Ndless 2.0.

Il fallait mettre à jour la suite complète Yagarto, le format binaire des librairies de Ndless 2 n'était plus compatible avec l'ancienne version.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 51.4%
 
Posts: 42257
Images: 16712
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Problème avec le C et MSYS

Unread postby Chockosta » 10 Apr 2011, 14:22

J'ai téléchargé Yagarto 4.6.0, même problème.

EDIT : Le problème a l'air de provenir de ma version de GCC (Liste bugs gcc)
Je vais tenter une réinstallation...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Problème avec le C et MSYS

Unread postby critor » 10 Apr 2011, 14:36

Chockosta wrote:J'ai téléchargé Yagarto 4.6.0, même problème.

EDIT : Le problème a l'air de provenir de ma version de GCC (Liste bugs gcc)
Je vais tenter une réinstallation...


Ça, c'est la version de GCC et non de Yagarto.

Voici les versions incluses dans le pack Yagarto qui marche chez moi:
binutils: 2.21
gcc: 4.5.2
newlib: 1.19.0
gdb: 7.2
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 51.4%
 
Posts: 42257
Images: 16712
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Problème avec le C et MSYS

Unread postby Chockosta » 10 Apr 2011, 14:45

Chez moi, ça marche pas, et en effet, une différence :
binutils: 2.20.1
gcc: 4.6.0
newlib: 1.19.0
gdb: 7.2

Où trouves-tu ta version ? Ma version est celle mise en ligne il y a 12 jours...

EDIT : Version trouvée ! En téléchargement...

EDIT 2 : AND I SUCCEEDED ! Merci beaucoup Critor...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Problème avec le C et MSYS

Unread postby Lionel Debroux » 10 Apr 2011, 15:27

Le compilo ne reconnait même pas la division et le modulo.

C'est à  cause du flag -nostdlib au compilo et au linker. Enlève-le :):
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6869
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Problème avec le C et MSYS

Unread postby Chockosta » 10 Apr 2011, 15:45

Merci ! En effet, ça marche mieux...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Re: Problème avec le C et MSYS

Unread postby Chockosta » 13 Apr 2011, 11:30

Re-bonjour.
Je me permets de upper ce sujet pour deux nouvelles questions...
J'ai reçu ma Nspire, et j'ai fait un snake (Je suis époustouflé par la vitesse du C)
Je voudrais faire des jeux un peu plus élaborés, et il faudrait un système de buffer. Or, un système de buffer est-il déjà codé pour Ndless ou faut-il en coder un (chose pas bien difficile non plus) ?
Et, deuxième question : Est-ce que ça vaut le coup que je mette mon snake sur le portail ? Ca reste un snake...
User avatar
ChockostaPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 2.2%
 
Posts: 213
Joined: 24 Feb 2011, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Math sup

Next

Return to Native: Ndless, Linux, ...

Who is online

Users browsing this forum: ClaudeBot [spider] and 3 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
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.
1474 utilisateurs:
>1456 invités
>12 membres
>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)