Makefile et i586-mingw32msvc-c++
Résolu
Bonsoir/Bonjour,
Je bataille avec mon fichier makefile depuis une bonne semaine. Mon programme est en c++. C'est un serveur que j'ai créé à l'aide de la bibliothèque Mongoose.
J'ai installé mingw32 sur mon OS 10.11 alternate i386 afin de compiler le programme.
Voici mon Makefile :
Maintenant le résultat de la compilation:
libs/mongoose.c:3918: error: '_strtoi64' was not declared in this scope
make: *** [MyServer.exe] Erreur 1
J'ai la même erreur lorsque j'utilise le compilateur 586-mingw32msvc-g++. Par contre, le compilateur 586-mingw32msvc-cpp m'indique la chose suivante : "586-mingw32msvc-cpp: too many input files".
Je bataille avec mon fichier makefile depuis une bonne semaine. Mon programme est en c++. C'est un serveur que j'ai créé à l'aide de la bibliothèque Mongoose.
J'ai installé mingw32 sur mon OS 10.11 alternate i386 afin de compiler le programme.
Voici mon Makefile :
SRC = libs/mongoose.c\ Configuration.cpp\ Logger.cpp\ NAME = MyServer.exe FUNC = sort OBJ = $(SRC:.cpp=.o) CC = i586-mingw32msvc-c++ ULTRASTRICT = -ansi -Werror -Wstrict-prototypes LDFLAGS += -O0 -g3 -Wall -fmessage -length=0 -fpermissive -Wunued -function ifndef UNAME UNAME := "Msys" endif ifeq ($(UNAME), "Msys") PREFLAGS = "-LC:\\MinGW\\lib" CFLAGS = -lws2_32 PLATFORM = else PREFLAGS = CFLAGS = PLATFORM = endif $(NAME) : $(OBJ) $(CC) $(PREFLAGS) -o $(NAME) $(OBJ) $(LDFLAGS) $(CFLAGS) $(PLATFORM) all : $(NAME) fclean : rm *.o re : all fclean echo : @echo $(UNAME) .PHONY : all re fclean .SUFFIXES : .cpp.o
Maintenant le résultat de la compilation:
libs/mongoose.c:3918: error: '_strtoi64' was not declared in this scope
make: *** [MyServer.exe] Erreur 1
J'ai la même erreur lorsque j'utilise le compilateur 586-mingw32msvc-g++. Par contre, le compilateur 586-mingw32msvc-cpp m'indique la chose suivante : "586-mingw32msvc-cpp: too many input files".
A voir également:
- Makefile et i586-mingw32msvc-c++
- C'est quoi un Makefile ? - Forum Linux / Unix
- Makefile séparateur manquant - Forum Programmation
- Separateur de millier ✓ - Forum MySQL
- Compiler un programme java avec un makefile - Forum Java
- Télécharger une image iso mandriva 2009.1 i586 ✓ - Forum Autres distributions Linux
3 réponses
Bah visiblement _strtoi64 est une fonction spécifique à windows, donc ton code ne peut pas compiler en tant que tel. Il faut adapter le code à cet endroit :
https://stackoverflow.com/questions/7388410/how-to-cross-platform-converting-char-to-long-long-64-bit
Bonne chance
https://stackoverflow.com/questions/7388410/how-to-cross-platform-converting-char-to-long-long-64-bit
Bonne chance