Probleme beim Compillieren von LUFA Projekten (USB für AVR)

#7923487
Lesenswert?

Guten Tag

Ich wollte mich jetzt einmal an AVR mit USB (ATmega32U4) heranwagen. Da die Beispiele auf Microchip dafür eher suboptimal sind (Schreibfehler -> O statt 0, Backslashes über den gesammten Quellcode wild verteilt usw.) hatte ich gedacht dass ich mir LUFA anschaue.(https://github.com/abcminiuser/lufa)

Also Zip heruntergeladen und versucht ein Beispielprojekt zu kompilieren.

Ich habe aber das Problem dass keines der Beispielprojecte kompillieren will. Weder mittels WinAVR + Kommandozeile noch über Microchip Studio.

Kann mir bitte jemand verraten was ich da falsch gemacht habe? Das ist die Konsolenausgabe:

1
C:\AVR\LUFA\lufa-master\Projects\USBtoSerial>make
2
      0 [main] sh 6840 sync_with_child: child 7044(0x208) died before initialization with status code 0xC0000142
3
     84 [main] sh 6840 sync_with_child: *** child state waiting for longjmp
4
/usr/bin/sh: fork: Resource temporarily unavailable
5
      0 [main] sh 3048 sync_with_child: child 10232(0x214) died before initialization with status code 0xC0000142
6
     80 [main] sh 3048 sync_with_child: *** child state waiting for longjmp
7
/usr/bin/sh: fork: Resource temporarily unavailable
8
      0 [main] sh 5188 sync_with_child: child 8140(0x214) died before initialization with status code 0xC0000142
9
     70 [main] sh 5188 sync_with_child: *** child state waiting for longjmp
10
/usr/bin/sh: fork: Resource temporarily unavailable
11
 [INFO]    : Begin compilation of project "USBtoSerial"...
12

13
avr-gcc (WinAVR 20100110) 4.3.3
14
Copyright (C) 2008 Free Software Foundation, Inc.
15
This is free software; see the source for copying conditions.  There is NO
16
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17

18
 [OBJCPY]  : Extracting EEP file data from "USBtoSerial.elf"
19
avr-objcopy -O ihex -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings USBtoSerial.elf USBtoSerial.eep || exit 0
20
      0 [main] sh 2116 sync_with_child: child 4092(0x200) died before initialization with status code 0xC0000142
21
     83 [main] sh 2116 sync_with_child: *** child state waiting for longjmp
22
/usr/bin/sh: fork: Resource temporarily unavailable
23
make: *** [USBtoSerial.eep] Error 128
24

25
C:\AVR\LUFA\lufa-master\Projects\USBtoSerial>

Hex und elf werden generiert, aber ich würde trotzdem gerne wissen was da einen Fehler wirft.

: Bearbeitet durch User
#7923554
Lesenswert?

Barny F. schrieb:

Hmmm. Ich habe Mint angeschmissen und da läufts. Ubuntu auch.

Wie kann ich Windows überreden dass es da auch funktioniert?

Hmm. Die Fehler sind im wesentlichen die zwei

1
[main] sh 6840 sync_with_child: child 7044(0x208) died before initialization with status code 0xC0000142
2
[main] sh 6840 sync_with_child: *** child state waiting for longjmp
3
/usr/bin/sh: fork: Resource temporarily unavailable

Irgendein Shellscript läuft da Amok. Und da es unter Windows weder eine native (Bourne) Shell noch einen Systemruf fork() gibt, braucht das eine mehr oder weniger gelungene Implementierung dieser UNIX-Infrastruktur für Windows (Windows Services For UNIX? [1]). So wie es aussieht, liegt das Problem da. Was spricht denn dagegen, unter UNIX [2] zu entwickeln?

[1] https://de.wikipedia.org/wiki/Microsoft_Windows_Services_for_UNIX [2] Muß ja nicht Linux sein, xBSD geht auch. Oder MacOS.

#7923783
Lesenswert?

Ein T. schrieb:

Barny F. schrieb:

avr-gcc (WinAVR 20100110) 4.3.3

Januar 2010...

Das war nur der Verzweiflungsversuch nachdem Microchip Studio 7 nicht funktioniert hat. Ich habe den Output von WinAVR gepostet da der wesentlich kürzer ist. Microchip Studio hat das Gleiche, nur dreimal so lange gesagt.

Übrigens ist die GCC Version für AVR unter Linux auch nicht soooooo viel neuer.

Wie geschrieben arbeite ich normalerweise unter Linux. Ich wollte eigentlich nur das Ganze auch unter Windows lauffähig machen damit auch die Windows-Nutzer deren Anpassungen machen können ohne das ich jedes mal die Änderungen machen muss.

Ich danke für die Vorschläge mit den vielen Wegen Linux einzusetzen. Ich wollte eigentlich nur wissen ob es einen Weg gibt das unter Windows Läuft. Aber ich habe keine Hoffnung Leute die sich absolut gegen Linux sträuben auf Dinge wie VM, Docker,... einsteigen.

Es ging mir hauptsächlich darum dass die Alten "Das habe ich immer schon so gemacht" Leute daran arbeiten können ohne dass ich für sie compilieren muss.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren