Forum: Mikrocontroller und Digitale Elektronik Pfad im Makefile richtig anpassen Eclipse EFM32


von Chris (Gast)


Lesenswert?

Nabend,
ich versuche gerade von IAR Workbench auf Eclipse als 
entwicklungsumgebung für mein EFM32GG.. Board umzusteigen. Dafür gibt es 
auch eine ApplikationNote:
http://cdn.energymicro.com/dl/an/pdf/an0023_efm32_eclipse_toolchain.pdf
Ich hänge allerdings auf seite 9, an der nötigen Änderung am Makefile. 
Die angegebene Zeile die man ändern soll, gibt es in dieser Form nicht. 
Tatsächlich sieht der Ausschnitt aus dem Makefile so aus:
1
# Change path to CodeSourcery tools according to your system configuration
2
WINDOWSCS = CodeSourcery/Sourcery G++ Lite
3
LINUXCS   = /cad/codesourcery/arm-none-eabi/arm-2010q1
4
GCCVERSION = $(shell $(CC) -dumpversion)
5
6
ifeq ($(ComSpec),)
7
  ifeq ($(COMSPEC),)
8
    # Assume we are making on a linux platform
9
    TOOLDIR = $(LINUXCS)
10
    RM = rm -rf
11
  else
12
    TOOLDIR = $(PROGRAMFILES)/$(WINDOWSCS)
13
    RM = "$(TOOLDIR)/bin/cs-rm" -rf
14
    QUOTE ="
15
  endif
16
else
17
  TOOLDIR = $(ProgramFiles)/$(WINDOWSCS)
18
  RM = "$(TOOLDIR)/bin/cs-rm" -rf
19
  QUOTE ="
20
endif

mein pfad zu codesourcery tools:
E:\win7progs\CodeSourcery\Sourcery G++ Lite

leider ist mir die syntax an dieser stelle nicht ganz klar, vielleicht 
kann mir ja jemand weiterhelfen wie ich den Pfad richtig im Makefile 
eintragen muss. Einige naheliegende Varianten hab ich schon probiert, 
allerdings mit imemr dem selben ergebnis, einer Fehlermeldung beim 
compilieren in eclipse:
**** Build of configuration Default for project blink ****

cs-make all
cs-make: *** No rule to make target `build/dvk.o', needed by 
`exe/blink.out'.  Stop.

von Chris (Gast)


Lesenswert?

hm, ich push wohl am besten mal, in der hoffnung das heute jemand 
reinschaut der mehr plan hat als ich =)

von Octavian T. (tunea)


Lesenswert?

Ich glaube er weiss schon.

# Change path to CodeSourcery tools according to your system 
configuration
WINDOWSCS = CodeSourcery/Sourcery G++ Lite
LINUXCS   = /cad/codesourcery/arm-none-eabi/arm-2010q1
GCCVERSION = $(shell $(CC) -dumpversion)

ifeq ($(ComSpec),)
  ifeq ($(COMSPEC),)
    # Assume we are making on a linux platform
    TOOLDIR = $(LINUXCS)
    RM = rm -rf
  else
    TOOLDIR = $(PROGRAMFILES)/$(WINDOWSCS)
    RM = "$(TOOLDIR)/bin/cs-rm" -rf
    QUOTE ="
  endif
else
  TOOLDIR = $(ProgramFiles)/$(WINDOWSCS)
  RM = "$(TOOLDIR)/bin/cs-rm" -rf
  QUOTE ="
endif

CC      = $(QUOTE)$(TOOLDIR)/bin/arm-none-eabi-gcc$(QUOTE)
LD      = $(QUOTE)$(TOOLDIR)/bin/arm-none-eabi-ld$(QUOTE)
AR      = $(QUOTE)$(TOOLDIR)/bin/arm-none-eabi-ar$(QUOTE)
OBJCOPY = $(QUOTE)$(TOOLDIR)/bin/arm-none-eabi-objcopy$(QUOTE)
DUMP    = $(QUOTE)$(TOOLDIR)/bin/arm-none-eabi-objdump$(QUOTE) 
--disassemble

Das ist mein makefile und läuft.

Er weiss wo genau in windows ist instaliert.
Der problem steht an die andere pfad.
zum Beispiel

C_SRC +=  \
../../../../../CMSIS/CM3/CoreSupport/core_cm3.c \
und
-I../../../../../CMSIS/CM3/CoreSupport \.

Hast du alle pfade von deine .c und .h files in den Makefile 
geschrieben?
Wenn du nicht alle Pfade geschrieben hat, weiß er nicht was für ein 
Regel für den Makefile braucht.
Viel erfolg

von Chris S. (hondaracer1)


Lesenswert?

ja, alle pfade waren richtig, nur das applikation note nach dem ich mich 
gerichtet habe war nicht ganz aktuell, bzw das makefile ist aktueller 
als die applikation note dazu. Das was ich ändern wollte/sollte brauch 
man nichtmehr anpassen, solang alle Programme unter den default pfaden 
installiert sind und genau das war bei mir nicht der Fall. C:\ fand ich 
als installpfad einfach nicht gut, daher rührten meine Probleme.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.