=head1 README

BBBike - a route-finder for cyclists in Berlin and Brandenburg

=head1 INSTALLATION

=head2 All systems except Windows


=head3 Download

You can find the newest distribution file of BBBike in the directory
L<http://sourceforge.net/project/showfiles.php?group_id=19142&package_id=14052> . The current source version is
L<http://heanet.dl.sourceforge.net/sourceforge/bbbike/BBBike-3.16.tar.gz> .

=head3 FreeBSD

For FreeBSD there is a I<port> for BBBike in the
category B<german>. For older versions of FreeBSD, you can find the
I<port> at L<http://www.freebsd.org/cgi/ports.cgi?query=bbbike&stype=all>.
To install the application via the ports system type:

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

If you don't have the BBBike I<port>, you can install BBBike like L<in other
UNIX's|/Linux, Solaris, other UNIX operating systems>.

=head3 Linux, Solaris, other UNIX operating systems

First, you have to install perl5. Most operating systems have perl
already bundled. You can check with

	perl -V

whether and which version of perl is installed. Otherwise you can find
perl5 at L<http://www.perl.com>. You need at least version 5.005.

Next step is to extract the BBBike distribution:


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

If perl/Tk (the recommended version is 804.027 or 800.025) is not installed:
change to the directory
C<BBBike-3.16> and type as super user:


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

Perl/Tk will be fetched over the internet, get compiled
and installed. "force" is needed because some modules (especially Tk)
have expected test failures and therefore would not be installed. If
you have problems, especially with the internet 
connection, then you should follow the instructions in

	perldoc perlmodinstall

on how to install a perl module manually (in this case: the Tk
module).

After that, you can start the program with


	perl bbbike

To compile some XS modules (this is optional and needs a C compiler)
and install the panel entry for KDE, type:


	perl install.pl

or


	./install.sh



You can also use Bundle::BBBike instead of Bundle::BBBike_small. This
will install more Perl modules, some of them only useable for the
development, but some of them enabling more features of BBBike.

If you choose to not use "perl install.pl", but you want to compile
and install the XS modules for better performance, then you have to
execute

	make ext

This requires the perl module L<Inline::C>.

=head3 Mac OS X

Mac OS X comes already with perl 5.6.0 oder 5.8.x. Now you just need XDarwin and Perl/Tk
to get BBBike running. For instructions how to setup Perl/Tk on Mac OS X
refer to the comp.lang.perl.tk newsgroup (see
L<http://groups.google.com>).

The following instructions are from Wolfram Kroll:

Get L<http://heanet.dl.sourceforge.net/sourceforge/bbbike/BBBike-3.16.tar.gz> and (from
L<http://www.cpan.org>) perl-5.8.4-stable.tar.gz, Tk-804.027.tar.gz

=over

=item 1.
Perl configured to use dynamic libraries:

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

--> /usr/local/ is the default (the original Perl is preserved)

=item 2.
Tk: that is not a Aqua-Tk, but rather is for X11, but...

 # make

in an X11 window: # make test

 sudo make install

=item 3.
bbbike under X11

runs!

=back

To compile bbbike under X11 the "Xcode" development tools are needed.
These can be found either on a CD-ROM of the same name (for older Macs)
or in the Applications folder under C<Installers/Xcode Tools/Developer.mpkg>
(for newer Macs).
 
An X11 environment or Darwin environment is also required (package X11SDK).

Mac OS Classic is not supported.


=head2 Windows 95/98/2000/NT/XP

=head3 Normal installation

BBBike and Perl need approx. 32 MB hard disk space.

Download the file
L<http://heanet.dl.sourceforge.net/sourceforge/bbbike/BBBike-3.15-Windows.exe> and just start it for the installation
program.

=head3 Alternative Windows Installation (1)

As an alternative, you can install BBBike just with the sources. Steps
for Windows 95/98/2000/NT/XP users:

=over 4

=item *

Download the perl distribution from the ActiveState webpage:

L<http://www.activestate.com/Products/ActivePerl/Download.html>



Usually, there are two files needed for the installation: the Windows
Installer and the Perl distribution for Windows Intel. You have to
execute both files. While installing Perl, you will have to reboot
your computer.

In current ActivePerl versions the Tk module is already included and
does not need to be installed.


=item *

Download
C<BBBike-3.15.tar.gz|http://heanet.dl.sourceforge.net/sourceforge/bbbike/BBBike-3.15-Windows.exe>
and extract this file with 
WinZip. The unpacked directory will not move in the later
installation.

=item *

Open the explorer, change to the BBBike-3.16 directory and call


	install.pl.

The installation program creates entries in the start
menu and a desktop icon.

=back

=head3 Alternative Windows Installation (2)

If you have Cygwin (L<http://www.cygwin.org/>) installed, you can start
a cygwin shell and follow the
L<UNIX instructions|/Linux, Solaris, other UNIX operating systems>.

=head3 Alternative Windows Installation (3)

As an further alternative, you can download an older distribution with Tk
included:

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

You have to extract this file with WinZip or gunzip+tar. In the
extracted directory, there will be the installation program
C<install.bat>. Call this program in the MSDOS prompt and follow the
instructions.

If you're using this old version of perl (5.004_02), you also need an
old version of BBBike, at least older than version 3.00.

=head3 Windows 3.1

Windows 3.1 is not supported anymore. Older BBBike versions (for
example 2.x) have instructions on how to use BBBike under Windows 3.1.


=head1 EXECUTION

To execute BBBike on Unix, change to the bbbike directory and type


	perl bbbike

in the shell. With a full KDE installation, there is an icon in the
application menu item
of the start menu. On Windows, there is a start menu entry for
BBBike.

To switch the English language support, please set the LC_ALL,
LC_MESSAGES, or LANG environment variables to "en" or something
similar (for FreeBSD and Linux, this is "en-GB.ISO8859-1"). For Unix,
this can be done with


	env LC_ALL=en-GB.ISO8859-1 perl bbbike


BBBike is a memory and cpu hog. You need at least 16 MB RAM on i386
platforms (Solaris needs at least 32 MB), but with 32/64 MB it will
work better. Some versions of BBBike are tested with: Solaris (Version 8 und 2.5), FreeBSD (Version 6.1, 4.9, 4.6, 3.5), Linux (Suse 7.0 und 6.4, Debian 3.0, Ubuntu, Red Hat 8.0), Windows (2000, NT 4.0, 98, 95), MacOSX 10.4. The
development machine runs with FreeBSD.

=head2 WWW version

There is a simple cgi version at

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

More information for the CGI version at:

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


=head2 Non GUI version

C<cbbbike> and C<cmdbbbike> are simpler command line versions of the program.

=head1 DEVELOPMENT

The current BBBike development may be tracked via CVS. Look at
L<http://sourceforge.net/cvs/?group_id=19142> for instructions on how to use CVS.

To use the CVS repository from command line type the following:

    # login is necessary only once, leave the password empty
    cvs -d :pserver:anonymous@bbbike.cvs.sourceforge.net:/cvsroot/bbbike login
    cvs -d :pserver:anonymous@bbbike.cvs.sourceforge.net:/cvsroot/bbbike co bbbike

    # to update the next time
    cd bbbike
    cvs -q update -d

The CVS repository is always up-to-date and also contains the current
data. B<Warning>: address of the CVS repository changed in May 2006. You
have to make a fresh checkout (co) if you have an old repository
checked out.

To update only the data part of BBBike, just download the current data
as a ZIP file from L<http://www.bbbike.de/cgi-bin/bbbike-data.cgi>. The ZIP file has to be
extracted in the BBBike program directory (Windows: in
C<C:\Programme\BBBike\bbbike>).

=head1 DOCUMENTATION

The L<documentation|bbbike> can be accessed in pod format (C<bbbike.pod>) or in
html format (C<bbbike.html>). You can read the pod version with tkpod,
perldoc or from bbbike (if B<Tk::Pod> is installed).


=head1 LICENSE

The most important parts of the application (C<bbbike>, C<cgi/bbbike.cgi>,
C<Strassen.pm> and C<Strassen/Inline.pm>) and the data in the
subdirectory C<data> are released unter the
L<GPL|http://www.opensource.org/licenses/gpl-license.html>.
The other files can be redristibuted either under the L<Artistic
License|http://www.opensource.org/licenses/artistic-license.html> or
the GPL. Please refer to the source files.

Some module und files from other authors are included in this
distribution: C<lib/your.pm> by Michael G Schwern,
C<lib/Text/ScriptTemplate.pm> by Taisuke Yamada, C<lib/enum.pm> by
Zenin, C<ext/Strassen-Inline/heap.[ch]> by Internet Software
Consortium, C<ext/BBBikeXS/sqrt.c> by Eyal Lebedinsky.

C<BBBike-3.15-Windows.zip> contains a partial C<SiePerl>
distribution, see
L<http://www.cpan.org/authors/id/G/GR/GRAHAMC/>

=head1 AUTHOR

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