Raspberry Pi als Remotedesktop-Client

Raspberry Pi als Rdesktop Client

Der kleine Raspberry Pi erfreut sich gerade ja in vielerlei Bereichen als Spielzeug der Wahl. Mir kam die Idee, ob man nicht den Raspberry Pi als echt kleinen Remotedesktop Client verwenden kann.

Im Raspian, dem Debian-Derivat von raspberrypi.org, ist schon das RDP Programm freerdp in Version 1.0.1 enthalten. Diese Version ist aber leider recht alt und hat, auf dem Raspberry Pi, Probleme mit der Farbdarstellung. Z.T. sind Farben invertiert.

Man kann aber recht einfach auf dem Raspberry Pi selber die Entwicklerversion kompilieren. Dafür sind folgende Schritte notwendig:

Erforderliche Programme/Bibliotheken

Auf der Wiki-Seite des Freerdp-Projektes stehen schon die meisten Informationen.

Ab der Überschrift “Generate makefiles” unterscheidet sich das Vorgehen auf dem Raspberry Pi aber.

Wie schon auf der Download-Seite von Raspian zu lesen ist, handelt es sich bei den Programmen auf dem Raspberry Pi um sog. hardfloat kompilierte Programme. Die Kompilieranweisung, welche im Freerdp-Projekt gemacht wird, erstellt aber softfloat-Programme.

Daher muss, vor einer erfolgreichen Kompilation, diese Anweisung verändert werden:

Zuerst einmal

cmake .

ausführen, damit die erforderlichen “cmake-Files” (Kompilieranweisungen) erstellt werden. Jetzt diese cmake-Dateien anpassen:

Anpassungen

In der Datei cmake/AndroidToolchain.cmake nach der Zeile

“elseif( ARMEABI_V6 )” suchen. Danach den Eintrag folgendermaßen ändern:

-mfloat-abi=softfp -> -mfloat-abi=hard

Beispiel:

nano cmake/AndroidToolchain.cmake

Ctrl+w

(suchen) und als Suchbegriff “elseif( ARMEABI_V6”

Die Zeile darauf editieren (Aus softfp als hard machen) und danach mit

Ctrl+o

die Datei speichern. Mit

Ctrl+x

nano beenden.

 

Ausserdem müssen viele Vorkommen in den Dateien libfreerdp/primitives/CMakeFiles/freerdp-primitives.dir/build.make und libfreerdp/codec/CMakeFiles/freerdp-codec.dir/build.make angepasst werden:

sed -i -e “s/-mfloat-abi=softfp/-mfloat-abi=hard/g” libfreerdp/primitives/CMakeFiles/freerdp-primitives.dir/build.make

sed -i -e “s/-mfloat-abi=softfp/-mfloat-abi=hard/g” libfreerdp/codec/CMakeFiles/freerdp-codec.dir/build.make

Jetzt sollte die Kompilation klappen.

Kompilation

make

make install

Benutzung

Damit die richtige Tastatur auf dem entfernten Computer verwendet wird, sollte man sich die Liste der unterstützten Sprachen ausgeben lassen:

xfreerdp /kdblist

Ein beispielhafter Aufruf lautet dann z.B.

xfreerdp /v:<Server-IP> /user:<Benutzername> +compression /bpp:15 /kbd:0x00000407