Page 1 of 2

Librairies C

Unread postPosted: 22 Jul 2015, 13:05
by Ti64CLi++
Bonjour,
je cherche des librairies en C (.h) mais je ne sais pas ou en trouver.
Est-ce que par hasard, quelqu'un ne saurait pas ou trouver ces librairies?
Merci d'avance

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:12
by Lionel Debroux
Sauf exception, les librairies ne se limitent pas aux headers, surtout en C.

Qu'est-ce que tu veux faire exactement, de manière plus générale ?

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:13
by Ti64CLi++
Ben je cherche les librairies stdlib.h, time.h, la SDL et ctype.h pour les transférer sur ma nspire.

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:15
by critor
Pourquoi ?
Parce que tu n'arrives pas à compiler quelque chose ?

Quel est le message d'erreur ?

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:21
by Adriweb
Ces headers sont inclus dans le SDK de Ndless, et sont utiles pour compiler.
Pour générer le binaire final, par contre (, lors du "link"), c'est avec l'option -l sur le compilateur qu'il faudra passer les bonnes librairies (SDL, par exemple) précompilées (des fichiers .a par exemple, se trouvant aussi dans le SDK de Ndless).

Je te conseille de regarder un Makefile existant d'un projet Ndless (récent, si possible) :)

(et pour générer un Makefile automatiquement pour un projet nspire, c'est avec la commande "nspire-tools new BLABLABLA")
Ce qui m'a fait ca, d'ailleurs (avec "test"):
Show/Hide spoilerAfficher/Masquer le spoiler
Code: Select all
DEBUG = FALSE

GCC = nspire-gcc
AS  = nspire-as
GXX = nspire-g++
LD  = nspire-ld
GENZEHN = genzehn

GCCFLAGS = -Wall -W -marm
LDFLAGS =
ZEHNFLAGS = --name "test"

ifeq ($(DEBUG),FALSE)
        GCCFLAGS += -Os
else
        GCCFLAGS += -O0 -g
endif

OBJS = $(patsubst %.c, %.o, $(shell find . -name \*.c))
OBJS += $(patsubst %.cpp, %.o, $(shell find . -name \*.cpp))
OBJS += $(patsubst %.S, %.o, $(shell find . -name \*.S))
EXE = test
DISTDIR = .
vpath %.tns $(DISTDIR)
vpath %.elf $(DISTDIR)

all: $(EXE).tns

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

%.o: %.cpp
        $(GXX) $(GCCFLAGS) -c $< -o $@

%.o: %.S
        $(AS) -c $< -o $@

$(EXE).elf: $(OBJS)
        mkdir -p $(DISTDIR)
        $(LD) $^ -o $@ $(LDFLAGS)

$(EXE).tns: $(EXE).elf
        $(GENZEHN) --input $^ --output $@.zehn $(ZEHNFLAGS)
        make-prg $@.zehn $@
        rm $@.zehn

clean:
        rm -f $(OBJS) $(DISTDIR)/$(EXE).tns $(DISTDIR)/$(EXE).elf $(DISTDIR)/$(EXE).zehn

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:22
by Ti64CLi++
Il me dis qu'il ne trouve pas ctype.h, stdlib.h, time.h
Par contre, j'ai réussi a trouver stdio.h, je l'ai transférer et quand je l'utilise dans un programme, il marche.
Par exemple, quand je fait ce programme:
Code: Select all
#include <stdio.h>
#include <stdlib.h>

int main()
{
     int age;
     printf("Quel est votre age : ");
     scanf("%d",&age);
     return 0;
}


elle me dit quelle ne trouve pas la librairies stdlib.h

Adriweb : mais moi, je programme direct sur calto grâce a dPicoC donc elles ne sont pas incluses.

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:28
by Adriweb
neuronix wrote:Adriweb : mais moi, je programme direct sur calto grâce a dPicoC donc elles ne sont pas incluses.

Ahhhh, ben ça change tout.
Et pour le coup, vu que c'est "juste" un interpréteur, les librairies genre SDL etc. ne fonctionneront pas.

Quant aux headers disponibles, d'après son code source, il a l'air d'y avoir uniquement: ctype.h, errno.h, math.h, stdio.h, stdlib.h, string.h

Mais bon, je ne suis même pas sûr de comment les utiliser - ptet que tu n'as même pas besoin de mettre les includes, là...

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:30
by Ti64CLi++
Eh ben alors, moi, il me manque ctype.h, errno.h, math.h, stdlib.h, string.h et aussi time.h même si je sais qu'elle ne marcheras pas.
Est-ce que tu saurais où je peux les trouver?

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:33
by Lionel Debroux
Comme Adriweb l'indiquait, dPicoC n'est pas un compilateur. C'est un interpréteur simplifié, qui permet de faire des choses d'algorithmique simples (suffisant pour l'enseignement), mais pas de faire de vrais gros programmes.

Re: Librairies C

Unread postPosted: 22 Jul 2015, 14:35
by Ti64CLi++
Oui, ça je l'avais compris mais je cherche juste les librairies cités dans mon dernier post.