Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Reference documentation: [http://dspace.org/technology/system-docs/install.html]

Notes:
* The following step-by-step howto has not been tested thoroughly. If you find any problems, please refer the reference documentation above.
* Most of the installation steps are performed in shell prompt (bash).
* Please help to make corrections. (English is not my primary language)
* This line will be deleted if I finish writing this howto and testing the DSpace system. I write this howto while I am installing DSpace on my Mandriva system. If you subscribe to DSpace-Tech mailing list (dspace-tech@lists.sourceforge.net), questions, comments, corrections, etc. to the list will be appreciated.

It is assumed that
* Linux Mandriva 2007 is already installed. See: [http://www.howtoforge.com/perfect_setup_mandriva_2007]
* The system has been connected to RPM repository (eg. via FTP, by typing at prompt: urpmi.addmedia ..).
* You are familiar with bash sell and text editor vi.

Panel

Contents

Table of Contents
outlinetrue
stylenone

Install Java Package in Mandriva

In Mandriva 2007.0, you can try Java SE Development Kit from Sun Microsystems, or a 'relatively' compatible Java package in Mandriva 2007.0. Below, the step-by-step howto for both are described. If found problems with the first, just try the second.

Install Java Package Provided by Mandriva 2007.0 Free Edition

Type the following:

Code Block
urpmi java-devel

that results in the following output:

Code Block
One of the following packages is needed:
1\- java-1.4.2-gcj-compat-devel-1.4.2.0-40.103.1mdv2007.0.i586 : JPackage development scriptsforGCJ (to install)
2\- kaffe-devel-1.1.8-0.20060723.1mdv2007.0.i586 : Developmentpackagewithstaticlibs and headersforkaffe (to install)
What is your choice? (1-2)

Press '1' that will result in the next choices:

Code Block
One of the following packages is needed:
1\- xml-commons-resolver10-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.0 utility from xml-commons (to install)
2\- xml-commons-resolver11-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.1 utility from xml-commons (to install)
3\- xml-commons-resolver12-1.3.03-5.1mdv2007.0.i586 : XmlResolver 1.2 from xml-commons (to install)
What is your choice? (1-3)

Press '3' that will present the following choices:

Code Block
One of the following packages is needed:
1\- eclipse-ecj-3.2.0-12.3mdv2007.0.i586 : EclipseCompilerforJava (to install)
2\- ecj-bootstrap-3.2.0-2mdv2007.0.i586 : EclipseCompilerforJava (to install)
What is your choice? (1-2)

Press '1'.

Code Block
To satisfy dependencies, the following packages are going to be installed:
antlr-2.7.6-4.1mdv2007.0.i586
bouncycastle-1.33-3mdv2007.0.i586
bouncycastle-jdk1.4-1.33-3mdv2007.0.i586
classpath-0.92-3mdv2007.0.i586
classpathx-jaf-1.1.1-1mdv2007.0.i586
classpathx-mail-1.1.1-3mdv2007.0.i586
classpathx-mail-monolithic-1.1.1-3mdv2007.0.i586
eclipse-ecj-3.2.0-12.3mdv2007.0.i586
gcc-java-4.1.1-3mdk.i586
gcj-tools-4.1.1-3mdk.i586
gjdoc-0.7.7-10mdv2007.0.i586
jamvm-1.4.3-3mdv2007.0.i586
java-1.4.2-gcj-compat-1.4.2.0-40.103.1mdv2007.0.i586
java-1.4.2-gcj-compat-devel-1.4.2.0-40.103.1mdv2007.0.i586
jpackage-utils-1.7.0-1.4mdv2007.0.noarch
libgcj7-4.1.1-3mdk.i586 libgcj7-base-4.1.1-3mdk.i586
libgcj7-devel-4.1.1-3mdk.i586
xalan-j2-2.7.0-2.1mdv2007.0.i586
xerces-j2-2.8.0-1mdv2007.0.i586
xml-commons-1.3.03-5.1mdv2007.0.i586
xml-commons-resolver12-1.3.03-5.1mdv2007.0.i586
Proceed with the installation of the 22 packages? (115 MB) (Y/n)

Press 'Y', and it will start installing Java package.

Download and Install Sun Java SE Development Kit

As an alternative of using Java package that is bundled with Mandriva 2007.0 Free Edition, you can download the Java SE Development Kit (JDK) from [http://java.sun.com/javase/downloads/index.jsp]. As stated in the reference documentation, you do not need Java EE (Enterprise Edition). You do not need Java SE with NetBeans, either; just the minimal JDK. As of this writing, the current version is Java SE Development Kit 5.0 Update 9, but in this howto we use JDK 5.0 Update 7, the RPM version (jdk-1_5_0_07-linux-i586-rpm.bin).

After putting the JDK file in the current directory, do the followings:

Code Block
chmod \+x jdk-1_5_0_07-linux-i586-rpm.bin ./jdk-1_5_0_07-linux-i586-rpm.bin #depends on the JDK version

The License Agreement will be presented to you. Just press space-bar until you are asked to agree the license terms. Type 'yes' and press Enter. The RPM file will be created, eg. jdk-1_5_0_07-linux-i586.rpm. Then, type the following and then press Enter:

Code Block
rpm \-ivh jdk-1_5_0_07-linux-i586.rpm

If you want to know the files that have been installed on your system, type:

Code Block
rpm \-ql jdk-1.5.0_07-fcs  #depends on the JDK version; see the message after the command: rpm \-ivh ..

At [http://www.linuxquestions.org/questions/showthread.php?t=214559], someone said that "it's worth installing Sun's J2EE enterprise java package when using tomcat. Just the normal java JRE will not work with Tomcat, because it uses J2EE libraries (jars)". He is right that 'normal java JRE will not work', but I think JDK is enough, so I decided to use Java package above (Java SE SDK). However, if you find problems with Sun JDK above, try to install Java EE SDK instead. It can be downloaded from [http://java.sun.com/javaee/downloads/index.jsp], eg. java_ee_sdk-5-linux.bin.

To install Sun Java EE SDK, follow these steps:

Code Block
urpmi libstdc++5 ./java_ee_sdk-5-linux.bin

and then follow the instructions.

Choose the Java Package

If you installed both Java packages above, you can switch from one package to another by setting environment variable JAVA_HOME. Just edit /etc/tomcat5/tomcat5.conf after Tomcat5 installation below. If you follow carefully all the steps above, then to make Tomcat use GNU Java, put this line into tomcat5.conf:

Code Block
JAVA_HOME="/usr/lib/jvm/java"

Alternatively, to make Tomcat use Sun Java, put this line into tomcat5.conf:

Code Block
JAVA_HOME="/usr/java/jdk"

and replace all java-related program in /usr/bin with the ones from Sun Java. You can do this by moving these files: jar, jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi, javaws, from /usr/bin/ to another directory, and put symbolic links to Sun Java programs in /usr/bin.

Code Block
cd /usr/bin
mv jar /another/directory/
mv jarsigner /another/directory/
mv java /another/directory/
.. and so on.
ln \-s /usr/java/jdk1.5.0_07/bin/jar
ln \-s /usr/java/jdk1.5.0_07/bin/jarsigner
ln \-s /usr/java/jdk1.5.0_07/bin/java
.. and so on.

Install Other Prerequisites Available as Mandriva RPMs

Type the followings:

Code Block
urpmi postgresql urpmi postgresql-server urpmi ant urpmi xml-commons-apis urpmi tomcat5

After the last line (urpmi tomcat5), the console will show the following lines:

Code Block
To satisfy dependencies, the following packages are going to be installed:
axis-1.2.1-2.2.1mdv2007.0.i586
bcel-5.1-6.1mdv2007.0.i586
jakarta-commons-beanutils-1.7.0-4.2mdv2007.0.i586
jakarta-commons-collections-3.2-1.1mdv2007.0.i586
jakarta-commons-daemon-1.0.1-4.1mdv2007.0.i586
jakarta-commons-dbcp-1.2.1-5.1mdv2007.0.i586
jakarta-commons-digester-1.7-4.1mdv2007.0.i586
jakarta-commons-discovery-0.3-2.1mdv2007.0.i586
jakarta-commons-el-1.0-6.2mdv2007.0.i586
jakarta-commons-fileupload-1.0-5.1mdv2007.0.i586
jakarta-commons-httpclient-3.0.1-1mdv2007.0.i586
jakarta-commons-launcher-1.1-1.1mdv2007.0.i586
jakarta-commons-logging-1.1-3.2mdv2007.0.i586
jakarta-commons-modeler-1.1-7.1mdv2007.0.i586
jakarta-commons-pool-1.3-2.1mdv2007.0.i586
log4j-1.2.13-2.1mdv2007.0.i586
mx4j-3.0.1-4.1mdv2007.0.i586
regexp-1.4-1.2mdv2007.0.i586
tomcat5-5.5.17-3.1.2mdv2007.0.i586
tomcat5-common-lib-5.5.17-3.1.2mdv2007.0.i586
tomcat5-jasper-5.5.17-3.1.2mdv2007.0.i586
tomcat5-jsp-2.0-api-5.5.17-3.1.2mdv2007.0.i586
tomcat5-server-lib-5.5.17-3.1.2mdv2007.0.i586
tomcat5-servlet-2.4-api-5.5.17-3.1.2mdv2007.0.i586
wsdl4j-1.5.2-3.1mdv2007.0.i586
Proceed with the installation of the 25 packages? (36 MB) (Y/n)

Just press 'Y' and you will see installation of Tomcat 5.5 begins.

DSpace will run as a web application at Tomcat, so we have to install tomcat5-webapps.

Code Block
urpmi tomcat5-webapps

and then press 'Y' and Enter after the following message:

Code Block
To satisfy dependencies, the following packages are going to be installed:
jakarta-taglibs-standard-1.1.2-2mdv2007.0.i586
tomcat5-webapps-5.5.17-3.1.2mdv2007.0.i586
Proceed with the installation of the 2 packages? (9 MB) (Y/n)

Next,

Code Block
urpmi tomcat5-admin
To satisfy dependencies, the following packages are going to be installed:
jakarta-commons-validator-1.3.0-1.1mdv2007.0.i586
jakarta-oro-2.0.8-2.3mdv2007.0.i586
rhino-1.6-0.r2.2.1mdv2007.0.i586
struts-1.2.9-3mdv2007.0.i586
tomcat5-admin-webapps-5.5.17-3.1.2mdv2007.0.i586
Proceed with the installation of the 5 packages? (13 MB) (Y/n)

Press 'Y' and Enter.

Configure the Environment

Configure Tomcat5

To ensure that Tomcat has enough memory to run DSpace and uses UTF-8 as its default file encoding for international character support, uncomment and edit 'JAVA_OPTS' environment variable in Tomcat startup script /etc/tomcat5/tomcat5.conf:

Code Block
vi /etc/tomcat5/tomcat5.conf

and then write the following line:

Code Block
JAVA_OPTS="-Xmx512M \-Xms64M \-Dfile.encoding=UTF-8"

Please note that the option: '-Xmx512M -Xms64M' will only be understood by Sun Java but not by GNU Java. Please see GNU Java documentation to get the same goal.

To alter Tomcat's default configuration to support searching and browsing of multi-byte UTF-8 correctly, add a configuration option to the <Connector> element in /etc/tomcat5/server.xml.

Code Block
vi /etc/tomcat5/server.xml

You will see the following lines in that file:

Code Block
<Connector port="Threads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false"redirectPort="8443"acceptCount="100"
connectionTimeout="20000"disableUploadTimeout="true"/>

Just add 'URIEncoding="UTF-8"' before slash:

Code Block
<Connector port="8080"maxHttpHeaderSize="8192"maxThreads="150"minSpareThreads="25"maxSpareThreads="75"
enableLookups="false"redirectPort="8443"acceptCount="100"
connectionTimeout="20000"disableUploadTimeout="true"URIEncoding="UTF-8"/>

Summary of the Environment

Code Block
\[tomcat\] /usr/share/tomcat5
CATALINA_BASE: /usr/share/tomcat5
CATALINA_HOME: /usr/share/tomcat5
CATALINA_TMPDIR: /usr/share/tomcat5/temp
JAVA_HOME: /usr/lib/jvm/java
/# or JAVA_HOME: /usr/java/jdk

Install DSpace

I will write DSpace installation steps here. Visit this page later. However, DSpace installation described in the the reference documentation is clear enough (see the first line of this howto).