Hallo zusammen, ich bekomme folgenden Output wenn ich versuche, einen beliebigen Sketch für PIC32 zu compilieren: ``` fork/exec /home/pdiener/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gc c/bin/pic32-g++: no such file or directory Compilation error: fork/exec /home/pdiener/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gc c/bin/pic32-g++: no such file or directory ``` Umgebung: Fedora Arduino IDE 2.2.1 Board manager URL: https://github.com/chipKIT32/chipKIT-core/raw/master/package_chipkit_index.json Eingestelltes Board: chipKit Pro MX7 (geht aber auch mit den anderen PIC32 Boards nicht) Example: AnalogWriteFrequencyAndResolution (geht aber auch mit den anderen nicht) Der bemängelte Pfad zum Compiler existiert und der Compiler lässt sich auch im Terminal ausführen ``` [pdiener@luna ~]$ /home/pdiener/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gc c/bin/pic32-g++ pic32-g++: fatal error: no input files compilation terminated. [pdiener@luna ~]$ ``` Dazu gibt es dieses Issue https://github.com/chipKIT32/chipKIT-core/issues/438 was ich für groben Unfug halte, das ist zwar ein Compiler für 32 bit, aber ein Crosscompiler, wenn der von der libc 32 bit abhängen würde, würde er ohne die nicht laufen. Abgesehen davon ändert das Installieren von der glibc-devel.i686 nichts. Dann hab ich noch hier was zum Thema gefunden: https://openbci.com/forum/index.php?p=/discussion/2536/diy-cyton-exec-bin-pic32-g-file-does-not-exist-resolved Allerdings erschließt sich mir der Kontext nicht, warum die dynamisch generierten Pfade zum executable des Compilers nicht korrekt sein sollten, im Output der IDE wird ja der richtige Pfad angezeigt und der soll angeblich nicht funktionieren. Den zu ändern auf einen absoluten Pfad hat nichts gebracht. Ich habe auch verifiziert, ob er den tatsächlich verwendet durch Veränderung auf einen ungültigen Pfad. Es geht angeblich um die platform.txt und dort die Zeilen: ``` compiler.path={runtime.tools.pic32-tools.path}/bin/ compiler.c.cmd=pic32-gcc ``` Hat irgendjemand eine Idee was da schief läuft?
Probier mal platformio.. hier ein Beispiel downloaden: (*) https://registry.platformio.org/platforms/platformio/microchippic32/examples/arduino-internal-libs/platformio.ini zipfile auspacken, pio run ... installiert compiler, läuft durch ... pio run -t upload konnte ich mangels hardware nicht testen. Compiler landet unter ~/.platformio/packages/toolchain-microchippic32/bin/pic32-g++ und ist "gcc version 4.8.3 chipKIT Compiler for PIC32 MCUs v1.43 (chipKIT)" *) das andere ("Blink") Beispiel hat einen kleinen Fehler im ini-file, ein leerzeichen durch unterstrich ersetzen, dann geht das auch.
Ist eine interessante Plattform. Aber irgendwie erscheinen mir die Einstiegshürden schon deutlich höher. Das ist alles cloud managed, ich muss ein eigenes Bord anlegen mit eigenen Bibliotheken wahrscheinlich. Für die original Arduino IDE hab ich das schon ein paar mal gemacht und der Aufwand ist überschaubar. Das kann man erstmal selber hosten, bevor man es upstream bringt. Platformio erscheint mir auch nicht besonders gepflegt, das Zeug hat vor Jahren die letzten changes gesehen. Ich brauch viele aktuelle Bibliotheken aus Arduino für TCP/IP, MQTT, Modbus...
Peter D. schrieb: > Das ist alles cloud managed Und warum sollte man sich so etwas überhaupt ansehen? Wenn einem etwas gestohlen bleiben sollte, dann ist es Cloudkram.
Harald K. schrieb: > Und warum sollte man sich so etwas überhaupt ansehen? Wenn einem etwas > gestohlen bleiben sollte, dann ist es Cloudkram. Full Ack.
Peter D. schrieb: > Das ist alles cloud managed Jetzt interessiert mich eure Definition von "cloud managed"? Böse, weil es aus dem Internet heruntergeladen wird? Wenn Compiler/toolchain & libraries erstmal heruntergeladen sind, läuft das komplett internet-frei...
Εrnst B. schrieb: > Wenn Compiler/toolchain & libraries erstmal heruntergeladen sind Und, wer garantiert, daß Du das nächste Woche, nächstes Jahr nochmal herunterladen kannst? Ein komplettes Downloadpaket zum Archivieren gibt es bei diesen ach so praktischen Lösungen nicht. Ist die Cloud weg, kann man den Kram nicht mehr neu einrichten. Ganz toll. Bei richtigen Offline-Installationen lädt man ein vollständiges Installationspaket herunter, das man zusammen mit seinen Projektdateien archivieren und auch Jahre später wieder installieren kann - ganz ohne Internet. Cloudinstaller aber bieten dem Anbieter die Möglichkeit, z.B. jederzeit auf ein schickes Abomodell umzusteigen. Da steht der Nutzer schnell im Regen. Wie war das mit Eagle? Konnte man früher kaufen und aufheben. Dann wurde ein schickes Abo draus, und jetzt ist es Bestandteil von irgendeinem fetten Softwarebrocken ...
Harald K. schrieb: > Und, wer garantiert, daß Du das nächste Woche, nächstes Jahr nochmal > herunterladen kannst? Und, wer garantiert dir das bei Arduino? Wer garantiert dir das bei der Toolchain, die du direkt von microchip herunterladen kannst? Wer garantiert dir das bei den Bergen an Bibliotheken incl. Abhängigkeiten, die von Github gehostet werden? Wenn das deine Sorge ist: Backups existieren, und platformio kann alles auch aus lokalen Ordnern oder git-repositories ziehen, musst du nur konfigurieren.
Mir geht es darum, dass ich selbst Bibliotheken schreiben und vor allem ein eigenes Board konfigurieren muss. Und ich brauche die bestehenden Bibliotheken von Arduino. Die Hardware gibt es schon, aber die war nie für open source gedacht, d.h. da gibt es weder Schaltpläne noch Boardconfigs für irgendeine Plattform. Den Schaltplan hab ich rausgezeichnet und jetzt wollte ich eine Arduino Boardconfig anlegen und bin dann daran gescheitert, dass der Compiler nicht gefunden wird, obwohl er da ist. Ob das nun Arduino oder Platformio wird, ist mir relativ egal, ich fange so oder so bei Null an. Aber die Bibliotheken für TCP/IP und damit verbundene Protokolle möchte ich gerne von Arduino nutzen. Den Stack von Microchip zu nehmen, kommt als open source nicht in Betracht. Das sind die Randbedingungen. Also entweder bekommt man das mit Platformio einfach hin oder der Bug in dem Arduino Target für PIC32 muss gefunden werden. Das ist bestimmt nur eine Kleinigkeit mit irgendwelchen Single/ Doublequote Gedöns aber ich kenn mich mit dieser Configfile Syntax einfach nicht aus und die Debugausgaben sind mehr als dürftig. Das ist ein keines Hobbyprojekt, für Geld würde ich das ja from scratch sauber mit make aufbauen, aber das ist mit dem Zeitbudget einfach overdone.
Εrnst B. schrieb: > Und, wer garantiert dir das bei Arduino? > Wer garantiert dir das bei der Toolchain, die du direkt von microchip > herunterladen kannst? Du hast anscheinend nicht verstanden, was ein Installationsprogramm ist. Das ist eine (große) Datei, die lädt man herunter und hebt sie auf. Um die Software zu installieren, braucht man nichts weiter, nur diese Datei. Nach dem Motto "was man hat, hat man". Der Cloudinstaller funktioniert nur solange, wie es den Hersteller gibt und der Hersteller Lust hat, das Programm auf diese Weise zu verteilen. Wenn nächstes Jahr auf ein Abomodell umgestellt wird, war's das. Ein Backup hilft hier nur soweit, als daß man den Rechner, auf dem man den Kram installiert hat, penibelst als Image sichern muss. Kann man auch machen, ist aber umständlich, und vor allem hilft es nicht, wenn man sich --umgotteswillen-- einen neuen Rechner anschafft.
Hab grad mal versucht, die chipKit package auf einer windowsbasierten Arduino-IDE zu installieren. Nicht sehr erfolgreich, das ist verbugt ohne Ende. Keine Ahnung, was da wieder falsch ist. Das knallt schon bei der Installation. Downloading packages chipKIT:pic32-tools@1.43-pic32gcc chipKIT:pic32prog@v2.1.46 chipKIT:drivers-windows@v2 chipKIT:pic32@2.1.0 Installing chipKIT:pic32-tools@1.43-pic32gcc Failed to install platform: chipKIT:pic32. Error: 13 INTERNAL: Cannot install tool chipKIT:pic32-tools@1.43-pic32gcc: searching package root dir: no unique root dir in archive, found 'C:\Users\DIE\AppData\Local\Arduino15\tmp\package-2817478911\bin' and 'C:\Users\DIE\AppData\Local\Arduino15\tmp\package-2817478911\lib'
Harald K. schrieb: > Du hast anscheinend nicht verstanden, was ein Installationsprogramm ist. Und du hast scheinbar nicht verstanden, dass das bei Arduino genauso läuft... siehe: Peter D. schrieb: > Downloading packages > chipKIT:pic32-tools@1.43-pic32gcc > chipKIT:pic32prog@v2.1.46 ... Und du hast nicht verstanden, dass er Bibliotheken aus dem bösen Internet verwenden will: Peter D. schrieb: > Aber die Bibliotheken für TCP/IP und damit > verbundene Protokolle möchte ich gerne von Arduino nutzen. Du behauptest: Harald K. schrieb: > Um die Software zu installieren, braucht man nichts weiter, nur diese > Datei. Dein Installer enthält also allen Quelltext der jemals zum Thema Arduino im Internet veröffentlicht worden ist, in allen erdenklichen Versionen? Wie ist dieser magische Installer bei dir angeliefert worden? Sattelschlepper voller Festplatten? Sorry, bevor ich mich auf so einen magischen Installer verlasse, archivier ich mir lieber die Toolchain und alle verwendeten Bibliotheken in exakt den Versionen die ich brauche. Ist ja nur ein Verzeichnis zusätzlich, was mit ins Archiv muss.
Harald K. darum geht es überhaupt nicht. Es geht darum, dass ich ein neues Board lokal entwickeln muss. Ohne zuerst blind alle Datein zu erstellen, online upstream zu bringen und dann erst per Download verwenden zu können. Der dafür nötige dev-Workflow ist bei platformio schlicht nicht erklärt. Wie pflegt man etwas lokal ein um es später upstream zu bringen? Und ja - ein offline Installer ist nice to have. Können wir diese Diskussion jetzt bitte beenden und uns auf die eigentliche Problematik konzentrieren? Die Installation von ChipKit funktioniert interessanterweise Auf Windows Arduino 1.8.19 wie ich gerade rausgefunden habe, nicht jedoch auf Windows Arduino 2.1.0 mit oben gezeigter Fehlermeldung. Fehlen da irgendwelche Rootverzeichnis Angaben in dem json file?
Interessant. Arduino IDE 1.8.19 compiliert die Sketches für ChipKit auch einwandfrei. Das Problem, dass es den Compiler nicht findet, gibt es offenbar nur auf Linux, nicht auf Windows. ``` C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\DIE\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\DIE\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\DIE\Documents\Arduino\libraries -fqbn=chipKIT:pic32:chipkit_pro_mx7:USB=z_custom -ide-version=10819 -build-path C:\Users\DIE\AppData\Local\Temp\arduino_build_648278 -warnings=all -build-cache C:\Users\DIE\AppData\Local\Temp\arduino_cache_628508 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.drivers-windows.path=C:\Users\DIE\AppData\Local\Ard uino15\packages\chipKIT\tools\drivers-windows\v2 -prefs=runtime.tools.drivers-windows-v2.path=C:\Users\DIE\AppData\Local\ Arduino15\packages\chipKIT\tools\drivers-windows\v2 -prefs=runtime.tools.pic32prog.path=C:\Users\DIE\AppData\Local\Arduino15 \packages\chipKIT\tools\pic32prog\v2.1.46 -prefs=runtime.tools.pic32prog-v2.1.46.path=C:\Users\DIE\AppData\Local\A rduino15\packages\chipKIT\tools\pic32prog\v2.1.46 -prefs=runtime.tools.pic32-tools.path=C:\Users\DIE\AppData\Local\Arduino 15\packages\chipKIT\tools\pic32-tools\1.43-pic32gcc -prefs=runtime.tools.pic32-tools-1.43-pic32gcc.path=C:\Users\DIE\AppData \Local\Arduino15\packages\chipKIT\tools\pic32-tools\1.43-pic32gcc -verbose C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\examples\eeprom_get\eeprom_get.ino C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\DIE\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\DIE\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\DIE\Documents\Arduino\libraries -fqbn=chipKIT:pic32:chipkit_pro_mx7:USB=z_custom -ide-version=10819 -build-path C:\Users\DIE\AppData\Local\Temp\arduino_build_648278 -warnings=all -build-cache C:\Users\DIE\AppData\Local\Temp\arduino_cache_628508 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.drivers-windows.path=C:\Users\DIE\AppData\Local\Ard uino15\packages\chipKIT\tools\drivers-windows\v2 -prefs=runtime.tools.drivers-windows-v2.path=C:\Users\DIE\AppData\Local\ Arduino15\packages\chipKIT\tools\drivers-windows\v2 -prefs=runtime.tools.pic32prog.path=C:\Users\DIE\AppData\Local\Arduino15 \packages\chipKIT\tools\pic32prog\v2.1.46 -prefs=runtime.tools.pic32prog-v2.1.46.path=C:\Users\DIE\AppData\Local\A rduino15\packages\chipKIT\tools\pic32prog\v2.1.46 -prefs=runtime.tools.pic32-tools.path=C:\Users\DIE\AppData\Local\Arduino 15\packages\chipKIT\tools\pic32-tools\1.43-pic32gcc -prefs=runtime.tools.pic32-tools-1.43-pic32gcc.path=C:\Users\DIE\AppData \Local\Arduino15\packages\chipKIT\tools\pic32-tools\1.43-pic32gcc -verbose C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\examples\eeprom_get\eeprom_get.ino Using board 'chipkit_pro_mx7' from platform in folder: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0 Using core 'pic32' from platform in folder: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0 Detecting libraries used... "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-g++" -c -g -O2 -w -std=gnu++11 -DARDUINO_ARCH_PIC32 -mno-smart-io -ffunction-sections -fdata-sections -mdebugger -Wcast-align -fno-short-double -ftoplevel-reorder -fno-exceptions -w -x c++ -E -CC -mprocessor=32MX795F512L -DF_CPU=80000000L -DARDUINO=10819 -D_BOARD_CEREBOT_MX7CK_ -DARDUINO_ARCH_PIC32 -DMPIDEVER=16777998 -DMPIDE=150 -DIDE=Arduino "-IC:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/sketch" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\cores\\pic32" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\variants\\Cerebot_MX7cK" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp" -o nul Alternatives for EEPROM.h: [EEPROM] ResolveLibrary(EEPROM.h) -> candidates: [EEPROM] "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-g++" -c -g -O2 -w -std=gnu++11 -DARDUINO_ARCH_PIC32 -mno-smart-io -ffunction-sections -fdata-sections -mdebugger -Wcast-align -fno-short-double -ftoplevel-reorder -fno-exceptions -w -x c++ -E -CC -mprocessor=32MX795F512L -DF_CPU=80000000L -DARDUINO=10819 -D_BOARD_CEREBOT_MX7CK_ -DARDUINO_ARCH_PIC32 -DMPIDEVER=16777998 -DMPIDE=150 -DIDE=Arduino "-IC:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/sketch" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\cores\\pic32" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\variants\\Cerebot_MX7cK" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\libraries\\EEPROM" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp" -o nul Using cached library dependencies for file: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\utility\Deeprom.c Using cached library dependencies for file: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\utility\compat.c Using cached library dependencies for file: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\utility\flash.c Generating function prototypes... "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-g++" -c -g -O2 -w -std=gnu++11 -DARDUINO_ARCH_PIC32 -mno-smart-io -ffunction-sections -fdata-sections -mdebugger -Wcast-align -fno-short-double -ftoplevel-reorder -fno-exceptions -w -x c++ -E -CC -mprocessor=32MX795F512L -DF_CPU=80000000L -DARDUINO=10819 -D_BOARD_CEREBOT_MX7CK_ -DARDUINO_ARCH_PIC32 -DMPIDEVER=16777998 -DMPIDE=150 -DIDE=Arduino "-IC:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/sketch" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\cores\\pic32" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\variants\\Cerebot_MX7cK" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\libraries\\EEPROM" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp" -o "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\preproc\\ct ags_target_for_gcc_minus_e.cpp" "C:\\Program Files (x86)\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\preproc\\ct ags_target_for_gcc_minus_e.cpp" Sketch wird kompiliert... "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-g++" -c -g -O2 -Wall -Wextra -std=gnu++11 -DARDUINO_ARCH_PIC32 -mno-smart-io -ffunction-sections -fdata-sections -mdebugger -Wcast-align -fno-short-double -ftoplevel-reorder -fno-exceptions -mprocessor=32MX795F512L -DF_CPU=80000000L -DARDUINO=10819 -D_BOARD_CEREBOT_MX7CK_ -DMPIDEVER=16777998 -DMPIDE=150 -DIDE=Arduino "-IC:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/sketch" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\cores\\pic32" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\variants\\Cerebot_MX7cK" "-IC:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardwar e\\pic32\\2.1.0\\libraries\\EEPROM" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp" -o "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp.o" In file included from C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM\examples\eeprom_get\eeprom_get.ino:18:0: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM/EEPROM.h:43:30: warning: type qualifiers ignored on function return type [-Wignored-qualifiers] operator const uint8_t() const { return **this; } ^ C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM/EEPROM.h:92:26: warning: type qualifiers ignored on function return type [-Wignored-qualifiers] operator const int() const { return index; } ^ Compiling libraries... Compiling library "EEPROM" Zuvor kompilierte Datei wird verwendet: C:\Users\DIE\AppData\Local\Temp\arduino_build_648278\libraries\EEPROM\ut ility\compat.c.o Zuvor kompilierte Datei wird verwendet: C:\Users\DIE\AppData\Local\Temp\arduino_build_648278\libraries\EEPROM\ut ility\flash.c.o Zuvor kompilierte Datei wird verwendet: C:\Users\DIE\AppData\Local\Temp\arduino_build_648278\libraries\EEPROM\ut ility\Deeprom.c.o Compiling core... Zuvor kompilierte Datei wird verwendet: C:\Users\DIE\AppData\Local\Temp\arduino_build_648278\core\Board_Data.c.o Using precompiled core: C:\Users\DIE\AppData\Local\Temp\arduino_cache_628508\core\core_chipKIT_p ic32_chipkit_pro_mx7_USB_z_custom_f3a7e7bad86846c41ad9e9e66219d0a5.a Linking everything together... "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-g++" -Wall -Wextra -Os "-Wl,--save-gld=C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_6482 78/sketch.ld,-Map=C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_64 8278/sketch.map,--gc-sections" -mdebugger -mno-peripheral-libs -nostartfiles -mprocessor=32MX795F512L -o "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/eeprom_get.i no.elf" "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardware\ \pic32\\2.1.0\\cores\\pic32/cpp-startup.S" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\sketch\\eep rom_get.ino.cpp.o" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\libraries\\ EEPROM\\utility\\Deeprom.c.o" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\libraries\\ EEPROM\\utility\\compat.c.o" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\libraries\\ EEPROM\\utility\\flash.c.o" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278\\core\\Board _Data.c.o" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/..\\arduino_ cache_628508\\core\\core_chipKIT_pic32_chipkit_pro_mx7_USB_z_custom_f3a7 e7bad86846c41ad9e9e66219d0a5.a" "-LC:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278" -lm -T "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardware\ \pic32\\2.1.0\\cores\\pic32/chipKIT-application-32MX795F512.ld" -T "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\hardware\ \pic32\\2.1.0\\cores\\pic32/chipKIT-application-COMMON.ld" "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/eeprom_get.i no.elf" "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/eeprom_get.i no.eep" "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-bin2hex" -a "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/eeprom_get.i no.elf" Bibliothek EEPROM im Ordner: C:\Users\DIE\AppData\Local\Arduino15\packages\chipKIT\hardware\pic32\2.1 .0\libraries\EEPROM (legacy) wird verwendet "C:\\Users\\DIE\\AppData\\Local\\Arduino15\\packages\\chipKIT\\tools\\pi c32-tools\\1.43-pic32gcc/bin/pic32-size" -A "C:\\Users\\DIE\\AppData\\Local\\Temp\\arduino_build_648278/eeprom_get.i no.elf" Der Sketch verwendet 22396 Bytes (4%) des Programmspeicherplatzes. Das Maximum sind 520192 Bytes. Globale Variablen verwenden 6388 Bytes (4%) des dynamischen Speichers, 124684 Bytes für lokale Variablen verbleiben. Das Maximum sind 131072 Bytes. ```
die Fehlermeldung "...pic32-g++: no such file or directory" kann auch daher kommen, dass Bibliotheken fehlen, gegen die der Compiler gelinkt ist. Test: ldd ~/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gcc/bin/pic32- g++ Sollte keine Zeile mit "not found" ausgeben. Falls doch, rausfinden was fehlt, nachinstallieren. Vorsicht, der Compiler ist vmtl. ein 32 Bit executable, also 32-Bit Version der Libraries benötigt... Peter D. schrieb: > Der dafür nötige dev-Workflow ist bei platformio schlicht nicht erklärt. > Wie pflegt man etwas lokal ein um es später upstream zu bringen? in den lib_deps kannst du einfach Ordnernamen oder Git-Urls angeben, statt der Bibliotheksnamen aus der Package-Registry. Aber egal, wenn's dir nicht gefällt, bleib bei der Arduino-IDE. Ich mag platformio, weil man eben direkt im Projekt die benötigten Versionen von Framework, Toolchain, Bibliotheken pinnen kann. Wenn ich das Projekt weitergebe, oder ein Kollege daran entwickelt, kann ich sicher sein, dass der exakt die Versionen verwendet, die da vorgegeben sind. Keine Überraschung, weil er irgendwas in der falschen Version installiert hat, es inkompatibel aktualisiert wurde, es drölf Arduino-Bibliotheken mit demselben Namen gibt etc.
Εrnst B. schrieb: > Test: > ldd > ~/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gcc/bin/pic32- > g++ > Sollte keine Zeile mit "not found" ausgeben. Sieht so aus: [pdiener@luna ~]$ ldd ~/.arduino15/packages/chipKIT/tools/pic32-tools/1.43-pic32gcc/bin/pic32- g++ linux-gate.so.1 (0xf7f0c000) libc.so.6 => /lib/libc.so.6 (0xf7cee000) /lib/ld-linux.so.2 (0xf7f0e000) [pdiener@luna ~]$ Und das binary läuft ja auch, wenn ich es in der Konsole aufrufe. Von daher verstehe ich das Problem noch nicht. Ich kann mir höchstens vorstellen, dass da irgendwelche unprintbaren Zeichen mit in dem Aufruf von Arduino sind. Wenn ich es auf Windows installiere, funktioniert es ja und da unterscheiden sich nur die Binaries der Tools, da wird quasi eine andere Dependency aus dem Boardmanager json gezogen. Die Buildscripte sind genau die gleichen, von der selben Quelle.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.