Installation Gnuradio mit Build-Skript
Transcription
Installation Gnuradio mit Build-Skript
This line only printed with preprint option Installation von gnuradio auf Ubuntu mit “build-script” Matthias Renken∗ Bremen Michael Hartje† Hochschule Bremen, Bremen Zusammenfassung Die Installation von Gnuradio neueste Version 3.6.3 (Januar 2013) mit einem Build-Skript wird hier für Ubuntu beschrieben. Das Skript prüft alle Voraussetzungen zur Übersetzung und zum Betrieb von Gnuradio auf dem Rechner und holt per netzwerk ggf. die noch benötigten Softwarepakete. Es kann die Berechtigungen für den Betrieb setzen und später das paket installieren. ∗ Electronic address: [email protected], ; URL: nix; Dank an Matthias für die Bereitstellung der aktuell gesammelten Erfahrungen † Electronic address: [email protected] 1 I. EINFÜHRUNG Gnuradio in der neuesten Version 3.6.3 sowie die Ergänzungen zur Nutzung von Funcube Dongle und DVB-T-Stick (RTL 2832 U Chipsatz) sowie der USRP-TX-RX-Hardware sollen mit dem Build-Skript geladen, compiliert und installiert sowie für den betrieb eingerichtet werden. II. METHODE Die Installation erfolgt mit Netzanschluss. die folgende beschreibung stammt von Matthias und wird hier weitestgehen unverändert wiedergegeben. III. BESCHREIBUNG SCHRITTWEISE BEARBEITUNG ALS ZITAT Ich habe Gnuradio unter einem Ubuntu 12.10 installiert. Da ich die unity-Oberfläche gegen gnome getauscht habe, kann es sein, dass die Programme wie xterm oder editor unter anderen Menüpunkten zu finden sind. Daher lasse ich die Beschreibung, welches Menü aufzurufen ist. Bei Problemen einfach kurz anfragen. (Ein wenig Linux-Kenntnisse schaden nicht) 1. Auf dem Rechner muss Ubuntu installiert sein und ein Internetzugang vorhanden sein. 2. Unter ubuntu als normaler Benutzer ein Terminal (xterm) öffnen 3. In das eigene home-Verzeichnis wechseln: cd ~ ein Verzeichnis anlegen mkdir s r c in das Verzeichnis wechseln cd s r c 4. Nun folgende Zeile ausführen (per copy&paste in das Terminalfenster kopieren): 2 wget http://www.sbrac.org/files/build-gnuradio && chmod a+x ./build-gnuradio && ./build-gnuradio Dieses Skript “build-gnuradio” lädt die aktuelle Version von gnuradio herunter und installiert alle benötigten Bibliotheken. Man kann hinten beim Aufruf von build-gnuradio noch Parameter ergänzen, die dann ein Log schreiben oder auch nur Teile bearbeiten. 5. Die erste Frage "Want to continue?" mit "y" beantworten 6. Die zweite Frage "Do you have sudo rights?" ebenfalls mit "y" beantworten 7. Bei mir gab es während des Ablaufs eine einzige Fehlermeldung, die ich ignoriert habe (Im Seminar werde ich sehen, ob das ein Fehler war :-)) 8. Das Skript läuft sehr lange (u.U. mehrere Stunden) und verlangt zwischendurch immer mal wieder nach dem sudo-Passwort. Das ist das normale Passwort, mit dem man sich auch bei Ubuntu anmeldet. Man hat aber über lange Zeit das Gefühl, dass gar nicht passiert - Geduld. Experten sehen mit dem Kommando “top” in einem anderen Fenster nach, was passiert. Wenn wir ein Log schreiben, dann können wir mit l e s s compile . log den Vorgang verfolgen. 9. Am Ende gibt das Skript noch eine Export-Anweisung aus, der einen Verweis auf phyton enthält ("export..."). Diese Zeile muss in die Konfigurationsdatei für die eigene Umgebung (.bashrc) kopiert werden. Dazu in das home-Verzeichnis wechseln cd ~ und den Editor mit der Datei .bashrc aufrufen: gedit . bashrc Am Ende der Datei den vom Installationsskript erzeugten “export”-Befehl eintragen. Am besten aus dem Terminal herauskopieren und in den Editor einfügen. 3 10. Nun noch einmal den Benutzer ab- und wieder anmelden, damit die Änderungen wirksam werden. 11. Das wars. Jetzt sollte gnuradio komplett installiert sein. Der Treiber für meinen RTLDVB-T-Stick war auch gleich mit dabei. 12. Die Gnuradio Oberfläche kann aus einem Terminal (xterm) heraus gestartet werden mit gnuradio−companion & Ich hoffe, ich habe aus dem Gedächtnis heraus nichts vergessen. Viele Grüße Matthias Soweit das Zitat aus der mail von Mathias, DL9BDI. Er hat noch eine Ergänzung die vielleicht für den einen oder anderen noch eine Ergänzung darstellt: Wenn man Gnuradio nach der beschriebenen Anleitung installiert und damit mit einer schon definierten GRC-Schemaplan-Anwendung auf einen rtl2832-Empfänger zugreifen möchte, kann es zu der Fehlmeldung kommen, dass der Stick von Gnuradio nicht erkannt wird. Das äußert sich beim Ausführen des grc-skriptes in der Fehlermeldung: " F a i l e d t o c r e a t e RTL2832 Source : r t l 2 8 3 2 _ s o u r c e _ 0 " Das Problem besteht darin, dass das Betriebssystem den Stick zwar erkannt hat, das RTL-Modul von Gnuradio diesen allerdings nicht automatisch vereinbart hat. Die Lösung ist recht einfach: Der RTL-Komponente von Gnuradio werden die richtigen Werte für VID (USB-Vendor-ID) und PID (USB-Product-ID) manuell mitgeteilt. Dazu müssen wir erst mal die richtigen Werte ermitteln. Mit angeschlossenem Stick in einem Terminalfenster lsusb eingeben. Damit werden alle erkannten USB-Geräte und deren Adresse ausgegeben. Der DVB-T Stick könnte in der Liste z.B. so auftauchen: Bus 001 Device 0 0 6 : ID 0 ccd : 0 0 d3 TerraTec E l e c t r o n i c GmbH Der erste Wert hinter der ID ist VID, also hier 0ccd, der zweite Wert ist PID, hier 00d3. Nun geht man in der Oberfläche des Gnuradio-Companion auf die Komponente "RTL2832 4 Source" und klickt diese doppelt an. In dem Eigenschaften-Dialog die Werte “Custom USB VID” und “Custom USB PID” mit den oben ausgelesenen Werten eintragen. Dabei die Form 0x0ccd und 0x00d3 verwenden. Nun kann man das Skript neu übersetzen und ausführen lassen. Der Stick sollte nun von Gnuradio erkannt werden. IV. SCHLUßBEMERKUNG Von Matthias ist somit alles wichtige geschrieben – vielleicht will das jemand ausprobieren und hat damit seinen Rechner schon vorbereitet. Für die anderen überlegen wir und noch etwas. Das build-gnuradio-Skript läuft auch auf den folgenden Installationen von Linux: • Fedora • Opensuse 12.1 • Debian • LinuxMint Wer es also auf diesen Linuxdistributionen ausprobieren möchte, dürfte ebenfalls leicht zum Ziel kommen. Für Opensuse 11.4 habe ich ein geändertes Skript ausprobiert – klappt! (wer dies Skript braucht, kann sich gerne an mich wenden) 5