diff --git a/AdvancedInstall.md b/AdvancedInstall.md index 4a928db..2c77f50 100644 --- a/AdvancedInstall.md +++ b/AdvancedInstall.md @@ -1,4 +1,33 @@ -# Additional !Build/Install Documentation +# Advanced Install + + +1. Additional Build/Install Documentation
+2. Dependencies
+3. Overview
+4. The "Desert Island" Build
+5. Installing Outside The Source Tree
+  5.1. Installing The Latest Release
+  5.2. easy_install
+  5.3. Debian software package (deb)
+  5.4. Windows Installer
+  5.5. Apple Disk Image (dmg)
+6. Installing From A Source Tree
+  6.1. Creating a binary distribution From A Source Tree
+7. Platform-specific Notes
+  7.1. Debian/Ubuntu
+  7.2. CentOS 5.4
+    7.2.1 Dependencies
+  7.3. MacOS
+  7.4. Windows
+    7.4.1. What if that doesn't work?
+    7.4.2. How do I make it run as a Windows service?
+    7.4.3. How do I make it run under a different user account?
+ + + + +## Additional !Build/Install Documentation + The quick start docs in [docs/quickstart.html](http://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/quickstart.html) are sufficient to get Tahoe-LAFS running on all platforms. This wiki page is *only* for advanced, optional installation features and you should not read this page if all you want is to get Tahoe-LAFS running. If you have trouble getting it to work by following [docs/quickstart.html](http://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/quickstart.html) then please write to [the tahoe-dev mailing list](http://tahoe-lafs.org/cgi-bin/mailman/listinfo/tahoe-dev) and ask for help. @@ -7,6 +36,7 @@ Please feel free to add sections to this page with anything you might learn while building Tahoe-LAFS. Information which may be useful in the most general cases will be folded into docs/quickstart.html . + ## Dependencies The canonical list of dependencies and their versions is in source:_auto_deps.py. To see the current versions of those dependencies (plus a few others like the Python interpreter and the operating system) run `tahoe --version`. @@ -17,6 +47,7 @@ This isn't a complete list of dependencies though, because some of those package In addition to these, if you are running on Microsoft Windows, then you need to manually install [pywin32](http://sourceforge.net/projects/pywin32) before setting up Tahoe-LAFS. + ## Overview Tahoe-LAFS is happy to build and run in-place, from a source tree. It is not @@ -47,7 +78,8 @@ symlink). So until you delete the source tree, you can symlink `~/bin/tahoe` to your source tree's `bin/tahoe` and then use it as you would any other system executable. -## the "Desert Island" Build + +## The "Desert Island" Build Tahoe-LAFS will download and install most of the libraries it requires when you run "`python setup.py build`". You might want to pre-download these libraries: perhaps you @@ -79,36 +111,47 @@ things. The directory contains historical ones, but there should never be a reason to use anything but the latest. The tahoe-deps bundle contains a README that has a version number. - + ## Installing Outside The Source Tree If you want to use Tahoe-LAFS without keeping the source tree around, you will -need to actually install it somewhere. You have several options. +need to actually install it somewhere. +You have several options: + ### Installing The Latest Release + +### easy_install "`easy_install allmydata-tahoe`", on any system that has easy_install and setuptools installed, will download the latest release of Tahoe-LAFS (and its dependencies, all found via PyPI), build everything, and -install it into the standard place for python libraries on your system. On -unix platforms this usually goes into `/usr/lib/python2.5/site-packages/` +install it into the standard place for python libraries on your system. +On unix platforms this usually goes into `/usr/lib/python2.5/site-packages/` and `/usr/bin/tahoe` . + +### Debian software package (deb) On Debian or Ubuntu linux systems, you can install pre-compiled packages by adding the tahoe-lafs.org APT repository to your `/etc/apt/sources.list` and installing the "allmydata-tahoe" package. See [DownloadDebianPackages](DownloadDebianPackages) for details. + +### Windows Installer Windows users can use an installer, which also provides the [AllMyData](http://allmydata.com) backup client, and a SMB/winfuse -based frontend. These installers can be downloaded from (TODO: they're built, but where are they downloadable?). + +### Apple Disk Image (dmg) Mac users can use a .dmg file (also an installer?), which provides a simple -GUI app to launch the tahoe node. These can be downloaded from (TODO: same -problem). +GUI app to launch the tahoe node. +These can be downloaded from (TODO: same problem). -### Installing From A Source Tree + +## Installing From A Source Tree These commands will take the current source tree and install its contents somewhere else on your system. This is the traditional meaning of "install". @@ -125,6 +168,7 @@ software (via GNU autoconf, etc). ("`make install PREFIX=/usr/local`" does not currently work -- see #703.) + ### Creating a binary distribution From A Source Tree These commands will take the current source tree and create a single-file @@ -151,8 +195,10 @@ create a windows executable, and the corresponding installer. The "`make mac-exe`" and "`make mac-dist`" commands will create a Macintosh OS-X executable and the corresponding installer (.dmg) file. +[=#point7] == Platform-specific Notes == +[=#point7.1] === !Debian/Ubuntu === Tahoe-LAFS is primarily developed on !Debian/Ubuntu machines. You can either build @@ -160,21 +206,25 @@ from source (as described by this page), or download pre-compiled debian packages for several distributions. See the DownloadDebianPackages page for details. +[=#point7.2] === CentOS 5.4 === For installing in CentOS 5.4 you need this list of package: yum install gcc python-devel sqlite-devel gcc-c++ openssl-devel -Installing for dependencies: +[=#point7.2.1] + +

Dependencies

+ cpp glibc-devel glibc-headers kernel-headers libgomp libstdc++-devel e2fsprogs-devel keyutils-libs-devel krb5-devel libselinux-devel libsepol-devel zlib-devel - - -=== Mac === +[=#point7.3] +=== MacOS === You will need the standard Xcode development tools installed, or at least GCC in order to build some dependencies. Note that Xcode is quite large (2.5GB) so plan accordingly if you will need to download it. +[=#point7.4] === Windows === The following procedure will build and run Tahoe-LAFS on Windows. (This is basically exactly the [http://tahoe-lafs.org/source/tahoe-lafs/trunk/docs/quickstart.html docs/quickstart.html] procedure except with Windows-specific paths spelled out.) @@ -198,7 +248,9 @@ Note that this assumes that you install Python in the default location (C:\Pytho `C:\Python26\python setup.py install` can also optionally be used as on other platforms. -==== What if that doesn't work? ==== +[=#point7.4.1] +==== What if that doesn't work? ===== +}}} If the build or install steps result in an error that says a compiler is needed, install the MinGW C/C++ compiler as follows: @@ -217,12 +269,16 @@ compiler=mingw32 After installing the compilers, repeat the above instructions from step 4 (using a new command prompt to make sure that the environment variable setting has taken effect). + #### How do I make it run as a Windows service? +}}} + #### How do I make it run under a different user account? + 1. Create the new user account if necessary. 2. Run tahoe through "runas":