en:developer:install_svn
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
en:developer:install_svn [2017/07/07 09:26] – [Installing Perl: compiling perl from source] anupama | en:developer:install_svn [2018/08/24 04:50] – anupama | ||
---|---|---|---|
Line 3: | Line 3: | ||
===== Windows ===== | ===== Windows ===== | ||
- | + | ===== Linux and Mac ===== | |
- | ===== Mac ===== | + | |
- | + | ||
- | ===== Linux ===== | + | |
This covers installing subversion from a source tarball, for client-type uses. This document is based on an install of Subversion-1.4.3.tar.gz, | This covers installing subversion from a source tarball, for client-type uses. This document is based on an install of Subversion-1.4.3.tar.gz, | ||
Line 21: | Line 18: | ||
zlib is a library with a number of compression and decompression functions, used by Subversion internally. This is usually installed so feel free to start the installation without checking, just remember that if the installation fails, it might be because zlib is not installed. | zlib is a library with a number of compression and decompression functions, used by Subversion internally. This is usually installed so feel free to start the installation without checking, just remember that if the installation fails, it might be because zlib is not installed. | ||
- | ==== Neon ==== | + | ==== Neon - for older versions of Subversion |
You will need neon installed in order to access the Greenstone repository over the internet, via WebDAV. | You will need neon installed in order to access the Greenstone repository over the internet, via WebDAV. | ||
Neon ensures that the subversion client program can handle repositories hosted on http, not just those on a local disk. (Also, if you are going to be hosting repositories over http, you will need neon so you can test those repositories.) | Neon ensures that the subversion client program can handle repositories hosted on http, not just those on a local disk. (Also, if you are going to be hosting repositories over http, you will need neon so you can test those repositories.) | ||
+ | ==== OpenSSL, Scons, Serf - for newer versions of Subversion (e.g. 1.8.18) ==== | ||
+ | You will need to grab and compile up OpenSSL, grab and untar Scons and use this to compile up Serf. | ||
==== A note on dependencies ==== | ==== A note on dependencies ==== | ||
Subversion offers a dependencies tarball, containing APR, APR-Util, Neon and zlib. Instructions on using this are in the INSTALL file in the root directory of the subversion tarball. However, if you are installing on a system which already has some of this software installed, a subversion installation which tries to install new copies of them might not go smoothly. For that reason, I recommend checking what you have and don't have installed on your system first, and installing what's missing yourself, before installing subversion. | Subversion offers a dependencies tarball, containing APR, APR-Util, Neon and zlib. Instructions on using this are in the INSTALL file in the root directory of the subversion tarball. However, if you are installing on a system which already has some of this software installed, a subversion installation which tries to install new copies of them might not go smoothly. For that reason, I recommend checking what you have and don't have installed on your system first, and installing what's missing yourself, before installing subversion. | ||
Line 66: | Line 65: | ||
When compiling apr, if you encounter the error | When compiling apr, if you encounter the error | ||
< | < | ||
- | then follow the instructions at https:// | + | then follow the instructions at https:// |
+ | |||
+ | < | ||
+ | Edit your configure file | ||
+ | |||
+ | Change the line | ||
+ | |||
+ | $RM " | ||
+ | |||
+ | to | ||
+ | |||
+ | $RM -f " | ||
+ | |||
+ | This will resolve the error | ||
+ | |||
+ | rm: cannot remove `libtoolT': | ||
+ | |||
+ | Then try run configure. That's it :) | ||
+ | </ | ||
Now locate the '' | Now locate the '' | ||
Line 74: | Line 92: | ||
''# | ''# | ||
+ | ==== Installing older versions of Subversion ==== | ||
=== Install Neon === | === Install Neon === | ||
Check if you have neon by running: | Check if you have neon by running: | ||
Line 85: | Line 104: | ||
If you have a suitable version of neon, make a note of the neon home directory for use in the last step, [[# | If you have a suitable version of neon, make a note of the neon home directory for use in the last step, [[# | ||
- | If you don't have neon, or need to install a newer version, get a recent copy it from the [[http:// | + | If you don't have neon, or need to install a newer version, get a recent copy it from the [[http:// |
< | < | ||
cd / | cd / | ||
Line 115: | Line 134: | ||
</ | </ | ||
- | The configure may fail and require you to have sqlite3.c. The fail message will instruct you to grab the latest sqlite3 amalgamation tar (it will provide a link to a stable | + | The configure may fail and require you to have sqlite3.c. The fail message will instruct you to grab the latest sqlite3 amalgamation tar. |
+ | |||
+ | For older versions of subversion, | ||
< | < | ||
cp sqlite-3.6.13/ | cp sqlite-3.6.13/ | ||
After following these instructions in the fail message, re-run the configure step and then proceed to make and make install. | After following these instructions in the fail message, re-run the configure step and then proceed to make and make install. | ||
- | Now, subversion is installed in ''/ | + | Now, subversion is installed in ''/ |
+ | < | ||
+ | export PATH=/ | ||
+ | </ | ||
+ | ==== Installing newer versions of Subversion like Subversion 1.8.18 ==== | ||
+ | You'd need apr and apr-util built and installed, as described further above. | ||
+ | I'm assuming we unpack the following tar.gz files into a '' | ||
+ | |||
+ | 1. **Scons**\\ Grab the tar.gz file at https:// | ||
+ | and unpack into a '' | ||
+ | |||
+ | < | ||
+ | cd sources | ||
+ | mkdir scons | ||
+ | mv scons-local-2.3.0.tar.gz scons/. | ||
+ | cd scons | ||
+ | tar -xvzf scons-local-2.3.0.tar.gz | ||
+ | (You can put the tar file back to where it used to be) | ||
+ | </ | ||
+ | |||
+ | 2. **OpenSSL**\\ Grab openssl from https:// | ||
+ | |||
+ | < | ||
+ | cd sources | ||
+ | tar -xvzf openssl-1.0.2l.tar.gz | ||
+ | cd openssl-1.0.2l | ||
+ | |||
+ | export CFLAGS=" | ||
+ | # the above may or may not be needed for successfully compiling up Serf in step 3. | ||
+ | # However the '' | ||
+ | # the solution that fixed Serf compile failures | ||
+ | |||
+ | ./config --openssldir=/ | ||
+ | [For macs, do instead: | ||
+ | ./Configure darwin64-x86_64-cc --openssldir=/ | ||
+ | make | ||
+ | make install | ||
+ | </ | ||
+ | |||
+ | The '' | ||
+ | |||
+ | // | ||
+ | |||
+ | '' | ||
+ | |||
+ | '' | ||
+ | |||
+ | |||
+ | 3. **Serf**\\ Grab and unpack serf from http:// | ||
+ | |||
+ | < | ||
+ | cd sources | ||
+ | tar -xvjf serf-1.3.9.tar.bz2 | ||
+ | cd serf-1.3.9 | ||
+ | |||
+ | export CFLAGS=" | ||
+ | # flow on effect from OpenSSL, may not be required there nor here. | ||
+ | |||
+ | ../ | ||
+ | |||
+ | ../ | ||
+ | </ | ||
+ | Between the configure and scons install steps, you may not need to bother doing the scons check step in the Serf README:\\ '' | ||
+ | The '' | ||
+ | https:// | ||
+ | https:// | ||
+ | |||
+ | |||
+ | At the end of installing serf, the installed version of serf should contain '' | ||
+ | |||
+ | // | ||
+ | < | ||
+ | / | ||
+ | / | ||
+ | </ | ||
+ | then it may have nothing to do with exporting CFLAGS with '' | ||
+ | |||
+ | 4. **Subversion**\\ Can now at last compile up a new version of subversion //with serf//: | ||
+ | |||
+ | < | ||
+ | cd sources | ||
+ | tar -xvzf subversion-1.8.18.tar.gz | ||
+ | cd subversion-1.8.18 | ||
+ | </ | ||
+ | |||
+ | [BEGIN: NOT FOR SVN 1.9.9 AND/OR MAC OSX | ||
+ | |||
+ | If you try configuring SVN 1.8.18, you may get an error about missing sql-lite. For subversion 1.8.18, follow the instructions that the configure error message provides: | ||
+ | < | ||
+ | http:// | ||
+ | unpack the archive using unzip and rename the resulting | ||
+ | directory to: | ||
+ | / | ||
+ | </ | ||
+ | Then you'd re-run the configure command and onwards. | ||
+ | |||
+ | Alternatively, | ||
+ | |||
+ | < | ||
+ | cd sources | ||
+ | wget http:// | ||
+ | unzip sqlite-amalgamation-3071501.zip | ||
+ | mv sqlite-amalgamation-3071501 subversion-1.8.18/ | ||
+ | #needs to be renamed | ||
+ | </ | ||
+ | |||
+ | END] | ||
+ | |||
+ | Now proceed with the usual configure, make and make install. There are two locations in the configure command where Serf should be specified: | ||
+ | |||
+ | < | ||
+ | export CFLAGS=" | ||
+ | # flow on effect from OpenSSL, may not be required there nor here. | ||
+ | |||
+ | LDFLAGS=" | ||
+ | [--disable-neon-version-check and --with-neon are no longer recognised.] | ||
+ | Try adding: --enable-shared | ||
+ | |||
+ | make | ||
+ | make install | ||
+ | </ | ||
+ | |||
+ | // | ||
+ | |||
+ | 5. Add the installed SVN's bin folder to the PATH, such as by exporting it in '' | ||
+ | < | ||
+ | export PATH=/ | ||
+ | (export LD_LIBRARY_PATH=/ | ||
+ | ## stuck doing this only if you didn't compile up Subversion with the | ||
+ | ## configure command' | ||
+ | </ | ||
===== Installing Perl: compiling perl from source ===== | ===== Installing Perl: compiling perl from source ===== | ||
The instructions are from https:// | The instructions are from https:// | ||
- | Get the perl you want from http:// | + | Get the perl you want from http:// |
< | < | ||
tar -xzf perl-5.20.1.tar.gz | tar -xzf perl-5.20.1.tar.gz | ||
cd perl-5.20.1 | cd perl-5.20.1 | ||
- | ./Configure -des -Dprefix=/ | + | ./Configure -des -Dprefix=/ |
make | make | ||
make test | make test | ||
Line 136: | Line 287: | ||
</ | </ | ||
- | Once it's finished compiling, | + | Once it's finished compiling, |
< | < | ||
- | export PATH=/ | + | export PATH=/ |
</ | </ | ||
+ | |||
+ | Since you wouldn' |
en/developer/install_svn.txt · Last modified: 2023/03/13 01:46 by 127.0.0.1