Problème compilation avec Cygwin

Fermé
--Pouet-- - 12 avril 2010 à 10:11
 ahmed - 22 juin 2011 à 17:05
Bonjour,

j'utilise actuellement Cygwin pour compiler mes programmes C, enfin j'essaie du moins... :\

J'ai téléchargé tous les packages recommandés ( make, gcc, bash, cvs, openssh, openssl, subversion... ) et ajouté le répertoire Cygwin/bin au PATH système, mais j'obtiens toujours une erreur au lancement de 'make' :

make[3]: arm-none-eabi-gcc: Command not found

J'ai épluché les forums, et les seules solutions étaient l'installation des packages gcc et make, que j'ai déjà fait :)

Merci de votre aide, j'en ai besoin..

A voir également:

7 réponses

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
12 avril 2010 à 10:42
Fait tu ta compilation dans la console cygwin ?
cygwin est-il bien dans un répertoire sans espace ?
Si tu essais de compiler directement en utilisant gcc, est-ce que ça fonctionne ?
Es tu sur qu'il n'y a pas d'erreur dans ton makefile ?
Essai de savoir ce que veux dire exactement cette erreur.
0
Dans la console, et répertoire sans espace effectivement.

Le makefile était associé à l'exemple du programme C, projet d'exemple que j'ai téléchargé sur le site officiel de la caméra que je souhaite programmer, cmucam.org.

Je vais essayer de compiler avec gcc, oui.
0
Hum, beaucoup d'erreurs avec gcc. Mon makefile est-il nécessaire avec ce type de compilation ou seulement avec make ? Peut etre a-t il été mal construit..
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
12 avril 2010 à 11:34
le makefile ne sert qu'à make.
après un rapide coup d'oeil, il semble que arm soit relatif à la cross compilation.
Si c'est ce que tu veux faire, ok. Sinon, il y a des chance que tu ais choisi les mauvais paquets lors de ton installation.
Si tu veux seulement compiler un programme C sous Windows, essai plutôt mingw à la place de cygwin.
Essai de compiler un hello world.
Cygwin est un programme windows, donc essaye une solution windows : réinstalle tout.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nan jsui sur un PC au boulot ( en stage ^^ ), pas possible :\

Euh ouais tkt c'est bien ce genre de compilation que je veux, pour ça que j'ai choisi ces paquets précisément ;)

Et justement, c'est le hello world que j'essaie de compiler :s

Mais quels changements à utiliser MinGW ?



==>

J'ai réussi en téléchargeant les packages ARM à partir du web, et non pas du setup de Cygwin (:

Mais j'obtiens un : No rule to make target... Stop.
Ce n'est pas un problème de permissions, je suis en Administrateur..

Avez-vous une idée ?
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
12 avril 2010 à 14:07
là il faut regarder le makefile. Je connais peu.
essai make install ou make all, ou un truc dans le genre.
Mets le makefile ici, je verrai ce que je peut en tirer.
0
le makefile est celui ci, qui réfère vers le suivant mis plus bas

# Makefile for a cc3 project


# C files to compile
CSOURCES=main.c

# header files
INCLUDES=

# header files
LIBS=cc3-ilp

# the name of this project
PROJECT=hello-world


# the makefile is useless without the next line!
include ../../include/common.mk










# Copyright 2006 Anthony Rowe and Adam Goode
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.



# set hal if not given by "hal=____"
#hal=virtual-cam

ifeq ($(strip $(hal)),)
hal=lpc2106-cmucam3
endif

INCLUDES += ../../include/cc3.h
HALDIR=../../hal/$(hal)

# include definitions (compiler, options, etc)
include $(HALDIR)/defs.mk

ifneq ($(strip $(V)),1)
VV=@
endif


OBJDIR=$(HALNAME)_buildfiles
OBJS=$(patsubst %.c, $(OBJDIR)/%.o,$(CSOURCES))

# decide if we are building a project or a lib
ifneq ($(strip $(PROJECT)),)
item=$(PROJECT)_$(HALNAME).hex
else
PROJECT=$(LIB)
item=lib$(PROJECT)_$(HALNAME).a
endif


# targets
all: $(item)

$(PROJECT)_$(HALNAME).hex: $(PROJECT)_$(HALNAME)
@echo " OBJCOPY $@"
$(VV)$(OBJCOPY) -O ihex $< $@
$(VV)$(SIZE) $<

LIBFILES=$(foreach lib,$(LIBS),../../lib/$(lib)/lib$(lib)_$(HALNAME).a)
LIBDIRS=$(foreach lib,$(LIBS),../../lib/$(lib))
LIBARGS=$(foreach lib,$(LIBS),-l$(lib)_$(HALNAME))

# the whole-archive stuff is needed, because we need to include
# the syscalls -- gc-sections will eliminate useless symbols
$(PROJECT)_$(HALNAME): $(OBJS) $(HALDIR)/$(HALLIB) $(LIBFILES)
@echo " CC $@"
$(VV)$(CC) -o $@ $(OBJS) -L$(HALDIR) \
$(foreach ldir,$(LIBDIRS),-L$(ldir)) \
$(LIBARGS) \
-Wl,-Map=$(PROJECT)_$(HALNAME).map \
-Wl,--cref \
-Wl,--gc-sections \
-Wl,-whole-archive \
-lhal-$(HALNAME) \
-Wl,-no-whole-archive \
$(LDFLAGS)

$(OBJDIR):
@echo " MKDIR $@"
mkdir $@

$(OBJS): $(OBJDIR)/%.o : %.c $(INCLUDES) | $(OBJDIR)
@echo " CC $@"
$(VV)$(CC) $(CFLAGS) $(foreach ldir,$(LIBDIRS),-I$(ldir)) -o $@ -c $<


# if LIB = something
lib$(PROJECT)_$(HALNAME).a: $(OBJS)
@echo " AR $@"
$(VV)$(AR) rs $@ $^



clean:
$(RM) *.hex
$(RM) *.map
$(RM) $(PROJECT)_$(HALNAME)
$(RM) $(PROJECT)_$(HALNAME).exe
$(RM) lib$(PROJECT)_$(HALNAME).a
$(RM) -r $(OBJDIR)



.PHONY: clean all
0
Apparemment, ce serait peut etre la version du make utilisé.. M'enfin , j'ai fait la mise à jour tout à l'heure sous Cygwin donc je pense pas, au pire on peut connaitre la version du make ?
0
Résolu. Il fallait exécuter le 'make' au répertoire racine qui contient le dossier 'projects', et non pas un 'make' pour chaque projet :D
0
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
12 avril 2010 à 16:39
Je vois le souci.
on n'aurait pas pu deviner...
0
Svp moi aussi jai le meme erreur meme si je fai dans la racine
0