linkchecker/doc/install.txt

170 lines
5.2 KiB
Text
Raw Normal View History

2009-03-11 22:29:50 +00:00
Installation
============
If you are upgrading from older versions of LinkChecker you should
2011-07-25 17:44:12 +00:00
also read the upgrading documentation stored in upgrading.txt.
2009-03-11 22:29:50 +00:00
2011-04-14 10:21:37 +00:00
Setup for Windows
-----------------
Execute ``LinkChecker-x.y.exe`` and follow the instructions.
Setup for Mac OS X
------------------
Double click ``LinkChecker-x.y.dmg`` and drop the LinkChecker application
in your programs folder
2011-07-25 17:44:12 +00:00
Setup for GNU/Linux
-------------------
On all major Linux distributions (Debian, Mandriva, Redhat, Suse, Ubuntu),
the ``linkchecker`` package is available for install.
Manual setup for Unix systems
-----------------------------
2011-04-14 10:21:37 +00:00
First, install the required software.
2009-03-11 22:29:50 +00:00
1. You need a standard GNU development environment with
- C compiler (for example the GNU C Compiler gcc)
Depending on your distribution, several development packages
might be needed to provide a fully functional C development
environment.
Note for developers: if you want to regenerate the po/linkchecker.pot
template from the source files, you will need xgettext with Python
support. This is available in gettext >= 0.12.
2012-01-04 19:17:13 +00:00
2. Python >= 2.7 from http://www.python.org/
2009-03-11 22:29:50 +00:00
Be sure to also have installed the included distutils module.
On most distributions, the distutils module is included in
an extra ``python-dev`` package.
2011-01-09 15:51:15 +00:00
3. Qt development tools
The binary "qcollectiongenerator" is used to generate the
documentation files.
On Debian or Ubuntu systems, install the package qt4-dev-tools.
2011-07-25 17:44:12 +00:00
On Redhat systems, install the package qt-devel.
2011-01-09 15:51:15 +00:00
4. *Optional, for bash-completion:*
2009-03-11 22:29:50 +00:00
optcomplete Python module from http://furius.ca/optcomplete/
2011-01-09 15:51:15 +00:00
5. *Optional, for HTML/CSS syntax checks:*
2009-03-11 22:29:50 +00:00
HTML tidy from http://utidylib.berlios.de/
cssutils from http://cthedot.de/cssutils/
2011-01-09 15:51:15 +00:00
6. *Optional, for displaying country codes:*
2009-03-11 22:29:50 +00:00
GeoIP from http://www.maxmind.com/app/python
2011-01-09 15:51:15 +00:00
7. *Optional, used for Virus checking:*
2009-03-11 22:29:50 +00:00
ClamAv from http://www.clamav.net/
2011-01-09 15:51:15 +00:00
8. *Optional, used for login form submission:*
2010-10-14 16:36:11 +00:00
Twill from http://twill.idyll.org/
2011-04-14 10:21:37 +00:00
9. *Optional, for Mozilla Bookmark parsing:*
Python Sqlite from https://code.google.com/p/pysqlite/
2009-03-11 22:29:50 +00:00
2011-04-14 10:21:37 +00:00
10. *Optional, for GNOME proxy setting parsing:*
Python Gtk from http://www.pygtk.org/downloads.html
2009-03-11 22:29:50 +00:00
11. *Optional, to run the WSGI web interface:*
2011-04-14 10:21:37 +00:00
Apache from http://httpd.apache.org/
mod_wsgi from http://code.google.com/p/modwsgi/
2009-03-11 22:29:50 +00:00
2011-04-14 10:21:37 +00:00
Now install the application.
2009-03-11 22:29:50 +00:00
2011-04-14 10:21:37 +00:00
1. Generate Qt documentation
2009-03-11 22:29:50 +00:00
2011-04-14 10:21:37 +00:00
Run ``make -C doc/html`` to generate the Qt help file.
2009-03-11 22:29:50 +00:00
2. Compile Python modules
Run ``python setup.py sdist --manifest-only`` to create the MANIFEST
file.
Run ``python setup.py build`` to compile the Python files.
For help about the setup.py script options, run
``python setup.py --help``.
The CC environment variable is checked before compilation, so you can
change the default C compiler with ``export CC=myccompiler``.
3.
a) Installation as root
2011-04-14 10:21:37 +00:00
Run ``sudo python setup.py install`` to install LinkChecker.
2009-03-11 22:29:50 +00:00
b) Installation as a normal user
Run ``python setup.py install --home $HOME``. Note that you have
to adjust your PATH and PYTHONPATH environment variables, eg. by
adding the commands ``export PYTHONPATH=$HOME/lib/python`` and
``export PATH=$PATH:$HOME/bin`` to your shell configuration
file.
For more information look at the `Modifying Python's search path`_
documentation.
.. _Modifying Python's search path:
http://docs.python.org/inst/search-path.html#SECTION000410000000000000000
After installation
------------------
LinkChecker is now installed. Have fun!
Manual setup for OSX systems
----------------------------
1. Install the XCode developer tools
2. Install homebrew_ and then install pyqt.
.. _homebrew: http://mxcl.github.com/homebrew/
3. Run ``make app``.
Note: this appears not to be working due to bugs
in third-party libraries. Since I don't have no OSX hardware
anymore, I cannot fix that myself.
WSGI web interface
2009-03-11 22:29:50 +00:00
-----------------------
The included WSGI script can run LinkChecker with a nice graphical web
2009-03-11 22:29:50 +00:00
interface.
You can use and adjust the example HTML files in the lconline directory
to run the script.
2011-07-25 19:37:35 +00:00
1. Note that running LinkChecker requires CPU and memory resources.
Allowing a WSGI script to execute such a program for possibly a
2009-03-11 22:29:50 +00:00
large number of users might deplete those resources.
Be sure to only allow access from trusted sites to this script.
2. Copy the script lc.wsgi in the WSGI directory.
2009-03-11 22:29:50 +00:00
3. Adjust the "action=..." parameter in lconline/lc_cgi.html
to point to your WSGI script.
2009-03-11 22:29:50 +00:00
4. If you use Apache, copy config/linkchecker.apache2.conf
into your Apache configuration directory (eg. /etc/apache2/conf.d)
and enable it.
5. Load the lconline/index.html file, enter an URL and click on the
2010-07-29 19:04:58 +00:00
check button.
2009-03-11 22:29:50 +00:00
6. If something goes wrong, check the following:
2009-03-11 22:29:50 +00:00
a) look in the error log of your web server
b) be sure that you have enabled WSGI support in your web server,
for example by installing mod_wsgi for Apache
c) be sure that you have enabled the negotiation and versioning
modules for Apache:
a2enmod version
a2enmod negotiation