Aller Anfang ist schwer - Programmieren

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo Community,

    erstmal vielen Dank an euch, viele eurer Beiträge haben mir im Vorfeld geholfen und mir Dinge klar gemacht. Nun Geht es langsam ans "Eingemachte" und für jeden alten Hasen gibts was zu lachen:

    Meine eigentliche Frage bezogen auf die ganzen Quellcodes die hier so rumschwirren: Wie benutze ich diese?

    Klingt simpel, mann soll dieses oder jenes tun (bei mir konkret geht es um eine Lüftersteuerung), aber nirgens, auch in keinem FAQ finde ich den Anfang davon.

    Ich nutze RaspBMC (über NOOBS installiert) und eben XBMC, das soll auch mein Hauptgebiet bleiben (Mediacenter). Nun startet sich ja direkt XBMC wenn ich den Pi anmache, wie genau bzw wo gebe ich nun Quellcodes ein, speichere diese in Dateien etc? Ich habe schonmal "programmiert" wenn man das so nennen darf, aber eben nur unter Windows am Rechner, da öffnet man dann ein Programm, schreibt und speichert die Datei, unf wenn ich diese dann ausführe passiert etwas.

    Wie genau funktioniertd ass nun bei RaspBMC/XBMC/dem Pi ?


    Entschuldigt dass ich mich so doof anstelle, aber ich komme nicht wirklich weiter, und im TS Server bin ich alleine :D

    LG

    Santa

    RaspPi Mod. B
    RaspBMC
    XBMC

    Einmal editiert, zuletzt von santa (17. Oktober 2013 um 15:09)

    • Offizieller Beitrag

    Hallo santa,

    wenn du raspbmc einsetzt musst du zuerst ein eine Verbindung per ssh aufbauen. dies geschiet unter windows z.B. mittels putty (IP des Pi, user:pi, pw: raspberry). wenn du das geschafft hast ;). bist du auf der Kommandozeile und kannst loslegen. am ende ist es nicht deutlich anders als du es gewohnt bist. Du erstellst eine Datei, z.b. mit dem Editor nano

    Code
    nano eineneuetestdatei


    Dateiendungen spielen in linux eigentlich keine rolle un dienen nur der Orientierung. Wenn ich sie *.py nenne weiß ich halt auf anhieb das dort ein python Script drin ist. *.sh enthällt ein bash/shellscript.

    nun kopierst du den quellcode mittels copy+paste in deinen editor (Ich muss dringend mal die FAQ zu nano/vi schreiben), speicherst (STRG+O, Enter) und beendest den Editor (STRG+X)

    Um was für eine Art Code es sich handelt erkennst du meistens an der 1. Zeile des codes, der sogenannten shebang oder als "erfahrener" user am Stil, python sieht anders als bash sieht anders als C/C++ usw.

    Python
    #!/usr/bin/python = python
    #/bin/bash = Bash/shellscript

    Nun machst du die datei ausführbar

    Code
    chmod +x eineneuetestdatei

    und kannst sie nun mittels

    Code
    ./eineneuetestdatei


    ausführen (und warscheinlich ein Haufen Fehlermeldungen lesen, wenn es sich z.b. um python code handelt, da dieser das Copy+Pasten, auf Grund der Einrückungen, gerne mal nicht verkraftet ;) ).
    Desweiteren funktioniert diese Art nur wenn das Script eine Shebang hat, ansonsten weiss linux nicht was er damit anstellen soll.

    so das war die extreme Kurzform.

  • Hallo dbv,

    vielen Dank erstmal dass du es trotz lachen geschafft hast mir zu antworten ;)

    Ich bin nun ein wenig weiter, habe putty installiert... und das wars auch schon.

    In allen Tutorials, Hilfestellungen etc die ich lese bin ich beim selben Problem: "Aktivieren Sie ssh indem sie sudo XX" oder sonstwas eingeben, aber soweit bin ich ja noch garnicht? Irgendwie erschließt sich mir das alles nicht wirklich. SSH ist doch eine Art Fernsteuerung, mit der ich "bequem" vom Rechner aus auf dem Pi rumbasteln kann, soweit verstanden. Auch das anlegen von Dateien, wie du es erklärt hast, erschließt sich mir (theoretisch).

    Aber ich schaffe es einfach nicht "dorthin" zu kommen, sprich so weit dass ich überhaupt irgendwas tippen kann, auch kein Putty FAQ oder sonstwas hilft mir dabei =(


    /Edit

    Kommando zurück, zumindest das SSH hab ich zum laufen bekommen ;) Warte gespannt auf die nächste, mehr oder minder doofe Frage hierzu :D Bis dahin: Vielen Dank!

    Einmal editiert, zuletzt von santa (17. Oktober 2013 um 22:05)

    • Offizieller Beitrag

    soho, das ist doch ein Anfang. :) bei Putty musst du einen Hostnamen, ein user, ein pw angeben. Der hostname ist die IP des Pi, user und pw hab ich oben schon geschrieben. dann sollte ein fenster aufgehen (schwarz) und dich zur ersten Verbindung beglückwünschen.

  • Nun geht das ganze in Runde zwei, aber immerhin bin ich hier nun angelangt :D Ich beziehe mich nun bei dem was ich mache auf folgenden Beitrag:

    https://www.forum-raspberrypi.de/Thread-tutoria…einbauanleitung

    Gleich der erste Quellcode bereitet mir aber Kopfzerbrechen, beziehungsweise glaube cihd as Problem zu erkennen, nicht aber die Lösung. Wenn ich

    "[font="Monaco, Consolas, Courier, monospace"]wget http://pypi.python.org/packages/sourc…IO-0.1.0.tar.gz[/font]
    [font="Monaco, Consolas, Courier, monospace"]tar zxf RPi.GPIO-0.1.0.tar.gz[/font]
    [font="Monaco, Consolas, Courier, monospace"]cd RPi.GPIO-0.1.0[/font]
    [font="Monaco, Consolas, Courier, monospace"]sudo python setup.py install"[/font]

    [font="Monaco, Consolas, Courier, monospace"]kopiere und einfüge soll er (soweit verstehe ich das) sich unter der Adresse die Datei downloaden und mit der letzten Zeile installieren. Mein Pi schmeißt folgendes zurück:[/font]

    [font="Monaco, Consolas, Courier, monospace"]Error: The certificate of "pypo.python.org" is not trusted[/font]

    [font="Monaco, Consolas, Courier, monospace"]sowie[/font]

    [font="Monaco, Consolas, Courier, monospace"][font="Monaco, Consolas, Courier, monospace"]Error: The certificate of "pypo.python.org" hasnt got a known issuer.[/font]
    [/font]

    [font="Monaco, Consolas, Courier, monospace"][font="Monaco, Consolas, Courier, monospace"]Die Quelle scheint also unsicher sein und er will das nicht downloaden, wenn ich recht verstehe. [/font][/font]

    [font="Monaco, Consolas, Courier, monospace"][font="Monaco, Consolas, Courier, monospace"]Wie kann ich ihm sagen dass er zu tun hat was ich wünsche und nicht was er gut findet? ;)[/font][/font]

  • Perfekt, vielen Dank. Ist mal wieder wie bei allem was man programmiertechnisch so macht: Wenn man weiß wies geht, isses einfach ;)

    Vielen Dank, ab jetzt schlage ich mich wohl ein bisschen mit Quellcodes rum und behellige die Leute die sowas drauf haben :D

    Dir schonmal vielen Dank, nun weiß ich zumindest wo ich ansetzen kann =)

    LG

    Santa

  • Sicher, nicht nur deswegen ;) Aber wenn du nun schonmal hier bist... :D

    Ich habe gesehen dass ich nach ausführen der Installation hinter dem "pi@raspberry" welches immer am Anfang steh eine Zeichenfolge hatte (vermutlich eine Bibliothek die besagt dass nun in Python geschrieben werden soll).

    Wenn ich das ganze nun schließe und mich wieder auf den Pi schalte, ist das weg. Kann ich nun all diese Befehle (Nano Dateiname) usw ausführen und in dieser Datei dann einfach in Python schreiben, oder muss ich erst wieder in diese Bibliothek kommen (wenn ja, wie komme ich rein?)

    • Offizieller Beitrag

    Nach der Installation befindest du dich noch im gpio Ordner. Wenn die Installation fehlerfrei durchgelaufen ist, kannst du nun in einem python Script die gpio ansprechen. Mehr ist nicht zu tun.

    Es kann also ge'nano't und gepastet werden was das zeug hällt ;).

  • Das hab ich soweit durch. Wenn ich aber das ganze SSH schließe und morgen beispielsweise neu öffne, befinde ich mich ja wieder "am Anfang".

    Die ganzen Ordner und Unterordner, erstellten Dateien etc sind da. Nun möchte ich beispielsweise auf eine Datei zugreifen, welche irgendwo liegt.
    Der Pi sagt mir (bezogen auf obiges Script) nun dass diese Datei zur Lüftersteuerung nicht existiert, aber ich habe sie geschrieben und gespeichert.

    Wie kann ich nun prüfen ob die Datei wo liegt bzw kann ich Ordner öffnen und mir den Inhalt zeigen lassen? Oder muss ich, um eine Datei zu öffnen wie unter Windows den kompletten Speicherort (C:\Programme\usw.datei) eingeben?

    Nur weil ich dich gerade so voll spamme: Gibt es hier einen FAQ dazu den ich noch nicht gefunden habe? Ich habe meines Erachtens nirgends gelesen wie sowas funktioniert, dabei sind hier den Posts nach zu urteilen viele "Anfänger"?

    • Offizieller Beitrag

    Wenn du per shh connectest, landest du immer im homverzeichnis des users mit du dich anmeldest (in diesem fall pi); dieses befindet sich in /home/pi (abgekürzt ~). wo du die Dateien/Ordner erstellst weiss ich natürlich nicht. ;). ich vermute aber mal das sie alle im gpio ordner (schritt 2 aus deiner Installanleitung)

    Code
    cd RPi.GPIO-0.1.0


    ein

    Code
    ls -lh

    sollte dann hoffentlich die Files zum vorschein bringen

    Zum Thema FAQ: unsre FAQs sind noch neu und befinden sich im Aufbau. Wenn du etwas besteuern willst, gerne. Grade aus meiner Sicht immer wieder interessant welche Probleme Anfänger haben. ;)

  • Naja, dass was du mir hier schriebst schreit ja geradezu nach einem FAQ, mal schauen ob ich mich da nützlich machen kann ;)

    Ich bin nun schon Lichtjahre weiter, schaffe es Dateien zu öffnen, editieren und zu schließen (mal abgesehen vom nicht vorhanden Erfolg der Funktionen klappt es top :D).

    Allerdings muss ich nun jedesmal wenn ich eine Datei öffne den gesamten Pfad eingeben:

    "sudo nano /home/luefterscript/datei.py"

    Gibt es die Möglichkeit nun in das entsprechende Verzeichnis "luefterscript" zu wechseln und dort zu bleiben, sprich ich muss zum öffnen lediglich nano/datei.py angeben?

    Ich denke damit sollten wir es auch belassen, ich weiß nicht wann die Mods hier (DU! :P) schimpfen weil wir off topic plaudern ;)


    /edit

    Hat sich erledigt, ich habe nun erst verstanden was du mit "cd" meinst ;)

    Einmal editiert, zuletzt von santa (17. Oktober 2013 um 23:38)

    • Offizieller Beitrag

    da hast du aber ein /pi in deinem Pfad vergessen ;). du kannst natürlich mittels "cd" in den jeweiligen Ordner wechseln und dann "nano scriptname" oder "python scriptname" eingeben. immer aus gehend das di am start in "/home/pi/" landest. "cd lüftersteuerung" bringt dann logischerweise nach "/home/pi/lüftersteuerung". "cd .." bringt dich einen Ordner zurück.

    sudo brauchst du nur, wenn du Datein mir root rechten ausführen/editieren willst. Das erkennt msn recht schnell an einem "permission denied". Im homelaufwerk des user braucht man zum editieren der daraun liegenden Dateien
    sehr sehr selten.
    Das wird schon :)

  • Ou man, ich merke: So langsam kommt mein verlorenes Wissen zurückt, und das kann ja Tatsache Spaß machen sich mit Quellcodes zu ärgern :D

    Vielen Dank für die Hilfe, ich werde nun erst einmal ein bisschen spielen und dann bei Zeiten mal einen "How to not make you zum Gelächter" FAQ schreiben :D

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!