=head1 README

BBBike - ein Programm zum Suchen von Routen für Radfahrer in Berlin

=head1 FERTIGE PAKETE

Wenn man sich die Arbeit erleichtern möchte, dann kann man ein
fertiges Paket auf L<http://bbbike.sourceforge.net/downloads.de.html> finden
(Windows, einige Linux-Distributionen, MacOSX, FreeBSD).

Die nächsten Installationsschritte werden nur für die
BBBike-Installation aus den Quellen benötigt.

=head1 INSTALLATION


=head2 Alle Systeme außer Windows


=head3 Download

Die aktuellste BBBike-Archivdatei findet man im Verzeichnis
L<http://sourceforge.net/projects/bbbike/files/BBBike/> . Die aktuelle Sourcedatei ist
L<http://sourceforge.net/projects/bbbike/files/BBBike/3.18/BBBike-3.18.tar.gz/download> .

=head3 FreeBSD

Für FreeBSD existiert ein I<Port> für BBBike in der
Kategorie B<german>. Besitzer älterer FreeBSD-Versionen können den
I<Port> über L<http://www.freebsd.org/cgi/ports.cgi?query=bbbike&stype=all>
finden. Die Installation über das Ports-System erfolgt wie folgt:

	cd /usr/ports/german/BBBike
	make all install

Ohne I<Port> kann BBBike wie bei L<anderen Unices|/Linux, Solaris, andere Unices> installiert werden.

=head3 Linux, Solaris, andere Unices

Perl muss installiert sein. Das ist oft, besonders bei Linux, der
Fall. Mit

	perl -v

kann überprüft werden, ob und welche Version von perl installiert ist.
Ansonsten kann man Perl unter L<http://www.perl.org/get.html> finden. Es wird
mindestens die Version 5.005 benötigt, alle neueren Perl-Versionen
(5.6.x, 5.8.x, 5.10.x, 5.12.x, 5.14.x, 5.16.x) funktionieren auch.

Danach kann BBBike ausgepackt werden:


	zcat BBBike-3.18.tar.gz | tar xfv -

Falls perl/Tk (eine möglichst neue Version, z.B. 804.028 or 800.025) nicht
installiert ist: als Superuser folgendes eingeben:

        cd BBBike-3.18
	perl -I`pwd` -MCPAN -e shell
	force install Bundle::BBBike_small
	quit

Damit wird Perl/Tk über das
Internet geladen, compiliert und installiert. "force" wird
benötigt, da einige Module erwartete Fehler in der Test-Suite erzeugen
und damit die Installation verhindern. Wenn weitere Probleme
auftreten (insbesondere mit der Internet-Verbindung), dann sollten
die Anweisungen in

	perldoc perlmodinstall

befolgt werden, um das Modul Tk manuell zu installieren.

Danach kann das Programm mit


	perl bbbike

gestartet werden.

Optional kann mit


	perl install.pl

oder


	./install.sh

eine Compilierung von einigen XS-Modulen durchgeführt
werden sowie Einträge für KDE/GNOME erzeugt werden. Für das Compilieren
ist ein C-Compiler (z.B. gcc), der mittlerweile nicht bei allen
Linux-Versionen standardmäßig installiert wird, notwendig.

Statt dem oben erwähnten Bundle::BBBike_small kann auch Bundle::BBBike verwendet werden.
Damit werden wesentlich mehr Perl-Module installiert, die teilweise nur für
die Entwicklung verwendet werden, teilweise aber zusätzliche
BBBike-Features ermöglichen.

Wenn "perl install.pl" nicht verwendet wird, aber trotzdem die
XS-Module für bessere Performance installiert werden sollen, muss

	make ext

ausgeführt werden. Dazu ist das Perl-Modul L<Inline::C> notwendig.

=head3 Mac OS X

Mac OS X enthält bereits 5.8.x. Um BBBike zum Laufen zu bringen
werden noch XDarwin und Perl/Tk benötigt. Eine Anleitung zum Aufsetzen
von Perl/Tk auf Mac OS X bekommt man in der comp.lang.perl.tk Newsgroup
(siehe L<http://groups.google.com>).

Folgende Anleitung habe ich von Wolfram Kroll erhalten:

L<http://sourceforge.net/projects/bbbike/files/BBBike/3.18/BBBike-3.18.tar.gz/download> und (von
L<http://www.cpan.org>) perl-5.8.4-stable.tar.gz, Tk-804.027.tar.gz
besorgt.

=over

=item 1.
Perl auf dynamische Libs konfiguriert:

 # sh Configure -des -Duseshrplib
 # make
 # make test
 # sudo make install

--> /usr/local/ ist der default (das orginale perl bleibt erhalten)

=item 2.
Tk: das ist kein Aqua-Tk, sondern für X11, na meinetwegen...

 # make

in einem X11-Fenster: # make test

 sudo make install

=item 3.
bbbike unter X11

läuft!

=back

Um compilieren zu können, sind die Entwicklertools notwendig. Diese
werden "Xcode" genannt und befinden sich entweder auf einer
gleichnamigen CD (bei älteren Macs) oder im Applications-Ordner unter
C<Installers/Xcode Tools/Developer.mpkg> (bei neueren Macs).

Es wird auch eine X11- bzw. Darwin-Umgebung benötigt (X11SDK-Paket). 

Mac OS Classic wird nicht unterstützt.


=head2 Windows 95/98/2000/NT/XP/Vista/7/8

=head3 Normale Installation


BBBike und Perl benötigen ca. 32 MB an Festplattenspeicher.

Einfach die Datei L<http://sourceforge.net/projects/bbbike/files/BBBike/3.18/BBBike-3.18-Windows.exe/download> laden und starten.
Damit wird das Installationsprogramm gestartet.

=head3 Alternative Windows Installation (1)

Alternativ kann BBBike auch nur mit den Sourcen installiert werden.
Arbeitsschritte für Windows-95/98/2000/NT/XP-Benutzer:

=over 4

=item *

Aus dem WWW die perl-Distribution downloaden. Perl kann
von der ActiveState Webpage geladen werden:

L<http://www.activestate.com/activeperl/downloads>

oder es kann alternativ Strawberry Perl verwendet werden:

L<http://strawberryperl.com/>



Das Tk-Modul muss separat installiert werden. Das wird in der
Eingabeaufforderung mit den folgenden Kommandos getan:

    perl -MCPAN -eshell
    force notest install Tk
    quit


=item *

L<BBBike-3.18.tar.gz|http://sourceforge.net/projects/bbbike/files/BBBike/3.18/BBBike-3.18-Windows.exe/download>
downloaden und auspacken. Das
ausgepackte Verzeichnis kann an eine gewünschte Position verschoben werden.

=item *

In der Eingabeaufforderung oder im Explorer zum Verzeichnis BBBike-3.18
wechseln und


	install.pl

aufrufen. Das Installationsskript erstellt
Einträge für BBBike im Startmenü und erzeugt ein Icon auf dem Desktop.

=back

=head3 Alternative Windows Installation (2)

Wenn Cygwin (L<http://www.cygwin.org/>) installiert ist, können aus einer
cygwin-Shell heraus die Anweisungen wie bei einer
L<UNIX-Installation|/Linux, Solaris, andere Unices>
befolgt werden.

=head3 Alternative Windows Installation (3)

Für sehr alte Systeme (Windows95, 98) kann als weitere Alternative eine ältere perl-Distribution, die bereits Tk
enthält, geladen werden:

L<http://www.perl.com/CPAN/ports/win32/Standard/x86/perl5.00402-bindist04-bc.tar.gz>

Die geladene Datei muss mit WinZip oder gunzip+tar ausgepackt werden.
Im ausgepackten Verzeichnis befindet sich das Installationsprogramm
C<install.bat>. Das Programm in der Eingabeaufforderungen aufrufen und
die Anweisungen befolgen.

Mit dieser alten Version (5.004_02) von Perl benötigt man auch eine
relativ alte Version von BBBike (älter als 3.00).

=head3 Windows 3.1

Windows 3.1 wird nicht mehr unterstützt. Ältere Versionen von BBBike
(z.B. 2.x) haben noch eine Anleitung, wie man BBBike unter Windows 3.1
nutzen kann.


=head1 AUSFÜHREN

=head2 Perl/Tk-Version

Unter Unix wird BBBike ausgeführt, indem man ins bbbike-Verzeichnis
wechselt und 


	perl bbbike

eintippt. Wenn eine KDE/GNOME-Installation durchgeführt wurde, findet man
das Icon im 
Startmenü unter dem Punkt "Anwendungen". Bei Windows befindet sich das
BBBike-Icon ebenfalls im Startmenü.

Einige Versionen von BBBike wurden unter folgenden
Plattformen getestet: Linux (Debian wheezy, Debian squeeze, Debian etch, Ubuntu 12.04, CentOS, Suse 7.0 und 6.4, Red Hat 8.0), FreeBSD (Version 9.1, 9.0, 8.0, 6.1, 4.9, 4.6, 3.5), Windows (Windows 8, Windows 7, Vista, XP, 2000, NT 4.0, 98, 95), MacOSX (10.4, 10.5 ...), Solaris (Version 8 und 2.5). Die
Entwicklungsarbeit wird auf einem FreeBSD-Rechner vorgenommen.

=head2 WWW-Version

Im WWW existiert unter der Adresse

L<http://www.bbbike.de>

eine einfache, stark text-orientierte, aber dennoch leistungsfähige Version von bbbike. Weitere
Informationen zu der CGI-Version gibt es unter

L<http://bbbike.de/cgi-bin/bbbike.cgi/info=1>





=head1 ENTWICKLUNG

=head2 git

Der aktuelle Entwicklungsstand von BBBike kann mit git
verfolgt werden.

Dazu muss in der Kommandozeile folgendes eingegeben werden:


    git clone git://github.com/eserte/bbbike.git

Alle weiteren Male nur folgendes verwenden:

    cd bbbike
    git pull

Das git-Repository wird fast täglich aktualisiert und enthält auch die aktuellen
Daten.





=head2
Programm-Aktualisierung

Der aktuelle Programm -und Daten-Stand kann auch von der Adresse
L<http://www.bbbike.de/cgi-bin/bbbike-snapshot.cgi> downgeloadet werden.

=head2
Daten-Aktualisierung

Um nur die Daten zu aktualisieren, kann man sich die aktuellen Daten
als ZIP-Datei von L<http://www.bbbike.de/cgi-bin/bbbike-data.cgi> holen. Die ZIP-Datei
muss im BBBike-Programmverzeichnis (bei Windows unter
C<C:\Programme\BBBike\bbbike>) ausgepackt werden.

Die Daten können auch aus der Perl/Tk-Applikation heraus aktualisiert
werden: per Menüpunkt Einstellungen > Daten-Update über das Internet.

=head1 DOKUMENTATION

Die L<Dokumentation|bbbike> liegt im POD-Format (plain old
documentation) in der 
Datei C<bbbike.pod>, sowie als HTML (C<bbbike.html>) vor. Die
POD-Datei kann entweder mit tkpod, perldoc oder aus bbbike (bei
installiertem B<Tk::Pod>) heraus gelesen werden.


=head1 LIZENZ

Die wichtigsten Teilstücke der Anwendung (C<bbbike>, C<cgi/bbbike.cgi>,
C<Strassen.pm> und C<Strassen/Inline.pm>) und die Daten im
C<data>-Verzeichnis sind unter der
L<GPL|http://www.opensource.org/licenses/gpl-license.html>
veröffentlicht. Die restlichen Module können entweder unter der L<Artistic
License|http://www.opensource.org/licenses/artistic-license.html> oder
GPL veröffentlicht werden. Die genauen Lizenzbestimmungen stehen in den
Quelldateien selbst.

Einige Module und Dateien von anderen Autoren sind in dieser
Distribution enthalten: C<lib/your.pm> von Michael G Schwern,
C<lib/Text/ScriptTemplate.pm> von Taisuke Yamada, C<lib/enum.pm> von
Zenin, C<ext/Strassen-Inline/heap.[ch]> der Internet Software
Consortium, C<ext/BBBikeXS/sqrt.c> von Eyal Lebedinsky.

C<BBBike-3.18-Windows.zip> enthält einen Teil der
C<Strawberry Perl>-Distribution, siehe
L<http://strawberryperl.com/>

=head1 AUTOR

Slaven Rezic, E-Mail: L<slaven@rezic.de|mailto:slaven@rezic.de>
