Schönen guten Tag Leute, Ich bin neu hier, stolpere aber immer wieder über euer Forum wenn Ich nach meinen Problemen suche. Da Ich schon einiges versucht habe, schweife Ich nun etwas aus und fasse es später noch mal zusammen. Ich habe bisher durch mein E-Technik Studium auf Windows programmiert und Mikrocontroller wie den Arduino oder Tiva TM4C1294, von der IDE her alles sehr einfach einzurichten. Um mein Können dahingehend etwas zu vertiefen wollte Ich ein kleines Sensor/Automatisierungsprojekt starten, dass etwas umfangreicher wird als einfach Arduino-Lösungen. Dafür habe Ich mir den kleinen Pi ZeroW besorgt und möchte ein C++ Programm schreiben, dass in der Konsole läuft und seine Einstellungen über eine "Textdatei" erhält. Ich nutzte dieses Projekt vor allem zum lernen ... Was Ich aber nicht bedacht habe, dass der Pi durch sein eigenes OS schon ein eigenes Thema für sich ist. Per VNC möchte Ich mich ungern verbinden, dass habe Ich schon mal in einem Projekt gemacht und fand es nicht sehr angenehm. Außerdem möchte Ich eine IDE verwenden, die übersichtlicher ist als ein Texteditor per SSH, dafür fühle Ich mich noch nicht sicher genug... Am liebsten würde Ich auch Cross-Compilen, da mein PC dafür besser geeignet ist als der Pi. Mein Problem : - C++ Konsolenanwendung - Remote Programmierung mit "guter" IDE - Wenig Erfahrung in Linux/Pi, sonst nur µC mit eingebautem Debugger genutzt - Debuggen und Printf-Ausgabe ist wichtig (siehe unten) - Optional: Cross-Compilen, da PC Leistungsfähiger als Pi Meine bisherigen Versuche : 1) VS-Code 2) QT-Creator in Linux-VM 3) Netbeans 1) VS-Code braucht mind. ARMv7, der Zero besitzt ein ARMv6... 2) Nach folgenden Anleitungen: https://mechatronicsblog.com/cross-compile-and-deploy-qt-5-12-for-raspberry-pi/ https://wiki.qt.io/RaspberryPi2EGLFS Ich bekomme wohl den Pi richtig konfiguriert und Qt Creator auf der VM installiert, aber mir fehlen die C und C++ Bibliotheken. C konnte Ich schon mal über die QMAKE hinzufügen, das "Hello World" Programm konnte aber nicht auf dem Pi ausgeführt werden. Ich habe es aufgegeben, zumal Ich zu 90% auch keinen Schimmer hatte, was Ich da tue. 3) Netbeans 11.1 mit den alten C++-Plugin v8.2 funktioniert bisher am besten! C++ wurde direkt gefunden, der Pi als Host ist sofort erreichbar, Deploy und Ausführen klappt, Printf Ausgabe kommt an und Debug funktioniert auch. *Nachteil*: Entweder Printf-Ausgabe oder Debugging ... Sobald Ich das Programm debugge erhalte Ich keine Ausgabe in der Konsole mehr. Ich nutze die Standard Einstellungen, die Netbeans beim berbinden zum Pi entdeckt hat. (gbdserver, etc) Außerdem ist es kein Cross-Compilen, womit Ich Notfalls leben kann. Meine Frage : zu 1) Naja... Denke da kann man nichts machen, oder? zu 2) Weiß jemand was Ich hier falsch mache? Laut der Seiten scheint es direkt laufen zu müssen... Die Bibliotheken sind ziemlich eindeutig irgendwo falsche Einstellungen, da sie einfach nicht gefunden werden. Aber beim Ausführen bekomme Ich nur die Meldung "No command found" (glaube Ich, zur Zeit habe Ich die VM und den Pi wieder zurückgesetzt und kann es nicht direkt testen) zu 3) Ist es normal, dass Ich entweder die Ausgabe sehen kann oder die Debug-Ansicht nutzen kann? Habe Ich irgendwas falsch eingerichtet? Ansonsten : Ich habe durch den Titel schon ein weiteres How-To gefunden, was Ich dann wohl als nächstes versuchen werde: Beitrag "Cross-Compile & Remote-Debugging mit Eclipse" (Danke Basti) Aber wenn jemand Ideen zu 2 oder 3 hat, würde Ich die gerne hören und würde sie auch noch mal ausprobieren. Ich habe zwar keine richtige Präferenz was die IDE angeht, aber Netbeans und Eclipse kenne Ich bisher nur für die Java Programmierung und habe sonst nur CodeComposerStudio und VisualStudio genutzt. Ich hoffe das ist jetzt nicht alles zu wirr :) Gruß Rüdi
Zu deinen Fragen kann ich nicht viel sagen. Ich nutze meist ein Eclipse auf einem Linux Rechner, lade mir die Sourcen des Raspi, erstellte ein neues Projekt und Debugge über GDB direkt im Eclipse. Denke Mal dass sollte auch mit dem Zero kein Problem sein. Bestätigen kann ich es aber nicht, da ich keinen habe.
IDE vom Kaliber eines QT Creator, VS Studio oder eclipse aufm pi zero direkt laufen zu lassen ist IMHO nicht sinnvoll, da kommt keine Freude auf. Das Ding hat einfach zu wenig Prozessor und vor allem RAM dafür. Daher wenns IDE sein muss jene auf einem richtigen PC laufen lassen, cross-compile falls nötig.
N. M. schrieb: > Ich nutze meist ein Eclipse auf einem Linux Rechner, lade mir die > Sourcen des Raspi, erstellte ein neues Projekt und Debugge über GDB > direkt im Eclipse. Ich konnte mir durch den im letzten Part meines Post erwähnten Beitrag nun ebenfalls Eclipse mit der GNU Toolchain von Sysprog.com einrichten. Es funktioniert eigentlich ganz gut, der gdbserver scheint zwar falsch beendet zu werden (logout statt quit), aber bisher scheint sonst alles zu klappen. Mit Linux habe Ich leider noch sehr wenig Erfahrung, so dass z.B. keine Ahnung habe, was du mit "Sourcen vom Raspi laden" meinst. Denke mal ähnlich wie mit der Toolchain, die "arm-linux-gnueabihf-*" Dateien. rµ schrieb: > IDE vom Kaliber eines QT Creator, VS Studio oder eclipse aufm pi zero > direkt laufen zu lassen ist IMHO nicht sinnvoll, da kommt keine Freude > auf. Das Ding hat einfach zu wenig Prozessor und vor allem RAM dafür. > > Daher wenns IDE sein muss jene auf einem richtigen PC laufen lassen, > cross-compile falls nötig. Die IDEs wollte Ich mitnichten auf dem Pi laufen lassen! Genau darum ging es ja. QT Creator lief bei meinen Versuchen die Guides nachzuverfolgen immer in einer Linux VM, die per SSH auf den Pi zugegriffen hat. Ich wollte von vornherein verhindern über VNC auf den Pi zuzugreifen um dort eine IDE/Editor zu verwenden.
Inzwischen habe Ich mir Eclipse auf Windows eingerichtet und es läuft soweit alles. Ausgabe und Debug sind zeitgleich möglich. Ich habe nur ein Problem mit wiringPi.h ... Jede Funktion erhält beim build: undefined reference to `FUNCTIONNAME' Ich habe inzwischen auch den Sysroot Ordner der Toolchain geupdated: http://gnutoolchains.com/raspberry/tutorial/sysroot Zu meinem Fehler habe Ich bereits folgendes gefunden: https://stackoverflow.com/questions/29262257/raspberry-pi-humidity-sensor-undefined-reference-pinmode-among-others Dort wird gesagt, dass man "-lwiringPi" seinem Compiler übergeben soll. Diesen habe Ich bei Eclipse unter "Properties -> C/C++ Build -> Settings -> Misc" eingefügt (hinter -c -fmessage-length=0). Das hat aber nichts gebracht, jetzt weiß Ich nicht weiter.
Hallo, ja das scheint wohl ein exotisches Problem zu sein. Ich suche auch schon seit Wochen nach einer Lösung dieses Problems. Vielleicht hat doch einer eine Lösung. Rüdiger, jetzt sind wir anscheinend zu zweit die diese Frage stellen. Aber ich weiß bisher nicht mal wo ich wiringpi in elipse verwenden kann. Das liegt wahrscheinlich an der sysprog toolchain. Das einzige was bisher lief war QT. Aber das läuft nur mit Linux vernünftig.
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.