Difference between revisions of "Open Office"

From CBLFS
Jump to navigationJump to search
 
(12 intermediate revisions by one other user not shown)
Line 10: Line 10:
 
|-
 
|-
 
| ftp://ftp.ussg.iu.edu/pub/openoffice/stable/{{OO-Version}}/OOo_{{OO-Version}}_src_system.tar.bz2
 
| ftp://ftp.ussg.iu.edu/pub/openoffice/stable/{{OO-Version}}/OOo_{{OO-Version}}_src_system.tar.bz2
 +
|-
 +
!Download Patch:
 +
|-
 +
| http://svn.cross-lfs.org/svn/repos/patches/OOo/OOo-3.1.1-HEADERFIX-1.patch
 
|}
 
|}
  
Line 33: Line 37:
 
=== Recommended ===
 
=== Recommended ===
 
* [[libart_lgpl]]
 
* [[libart_lgpl]]
 +
* [[CUPS]]
 +
* [[Curl]]
 +
* [[libjpeg]]
 +
* [[libTIFF]]
 +
* [[Python]]
 +
* [[neon]]
  
 
=== Optional ===
 
=== Optional ===
* [[boost]]
+
* [[boost]]  
* [[CUPS]]
 
* [[Curl]]
 
 
* [[desktop-file-utils]]
 
* [[desktop-file-utils]]
 
* [[EPM]]
 
* [[EPM]]
 
* [[Evolution]]
 
* [[Evolution]]
 
* [[GNOME Virtual File System]]
 
* [[GNOME Virtual File System]]
* [[libjpeg]]
 
 
* [[libsndfile]]
 
* [[libsndfile]]
* [[libTIFF]]
 
 
* [[libwpd]]
 
* [[libwpd]]
 
* [[Linux-PAM]]
 
* [[Linux-PAM]]
Line 51: Line 57:
 
* [[MySpell]]
 
* [[MySpell]]
 
* [[NAS]]
 
* [[NAS]]
* [[neon]]
 
 
* [[OpenLDAP]]
 
* [[OpenLDAP]]
* [[Python]]
 
 
* [[SANE]]
 
* [[SANE]]
 
* [[startup-notification]]
 
* [[startup-notification]]
Line 177: Line 181:
 
Add a few things needed by OpenOffice
 
Add a few things needed by OpenOffice
  
If you wish to use --with-firefox --with-system-mozilla=firefox you will need to add the following pkgconfig files. They are assuming firefox-3.5.2 and a install directory of /opt
+
If you wish to use --with-firefox --with-system-mozilla=firefox you will need to add the following pkgconfig files. They are assuming firefox-3.5.2 and a install directory of /opt. Also firefox will need to be compiled and installed with LDAP support
  
 
  cat > /usr/lib/pkgconfig/firefox-plugin.pc  << "EOF"
 
  cat > /usr/lib/pkgconfig/firefox-plugin.pc  << "EOF"
Line 185: Line 189:
 
  includedir=${prefix}/include
 
  includedir=${prefix}/include
 
  datarootdir=${prefix}/share
 
  datarootdir=${prefix}/share
 
+
 
  Name: Mozilla Plug-In API
 
  Name: Mozilla Plug-In API
 
  Description: Mozilla Plug-In API
 
  Description: Mozilla Plug-In API
Line 193: Line 197:
 
  EOF
 
  EOF
  
  cat >  /usr/lib/pkgconfig/firefox-xpcom.pc << "EOF
+
  cat >  /usr/lib/pkgconfig/firefox-xpcom.pc << "EOF"
 
  prefix=/opt/firefox-3.5.2
 
  prefix=/opt/firefox-3.5.2
 
  exec_prefix=${prefix}
 
  exec_prefix=${prefix}
Line 199: Line 203:
 
  includedir=${prefix}/include
 
  includedir=${prefix}/include
 
  datarootdir=${prefix}/share
 
  datarootdir=${prefix}/share
 
+
 
  idldir=IDLDIR
 
  idldir=IDLDIR
 
  Name: XPCOM
 
  Name: XPCOM
Line 209: Line 213:
 
  EOF
 
  EOF
  
Configure the package, adding any configuration options you desire: It will take some checking and depending on your system and package versions. This script was tested with a successful build.  
+
On Pure64 builds
 +
 
 +
ln -s /usr/lib/libjpeg.so /usr/lib64/libjpeg.so
 +
 
 +
Configure the package, adding any configuration options you desire: It will take some checking and testing depending on your system and package versions. This script was tested with a successful build. Build time on a 3Ghz Intel runs about 2 hours, So Enjoy!
  
 
  touch external/unowinreg/unowinreg.dll
 
  touch external/unowinreg/unowinreg.dll
 +
patch -Np1 -i ../OOo-3.1.1-HEADERFIX-1.patch
 
  ./configure --prefix=/opt/openoffice-{{OO-Version}} \
 
  ./configure --prefix=/opt/openoffice-{{OO-Version}} \
 
                 --enable-libart \
 
                 --enable-libart \
Line 223: Line 232:
 
                 --with-build-version=CBLFS \
 
                 --with-build-version=CBLFS \
 
                 --with-package-format=native \
 
                 --with-package-format=native \
                 --disable-binfilter  
+
                 --disable-binfilter \
                 --with-system-cairo
+
                 --with-system-cairo \
                 --enable-cairo  
+
                 --enable-cairo \
                 --enable-opengl  
+
                 --enable-opengl \
                 --enable-dbus  
+
                 --enable-dbus \
                 --with-system-openssl  
+
                 --with-system-openssl \
                 --with-system-jpeg  
+
                 --with-system-jpeg \
                 --with-system-python  
+
                 --with-system-python \
                 --with-system-poppler  
+
                 --with-system-poppler \
                 --with-system-curl
+
                 --with-system-curl \
                 --with-ant-home=/opt/ApacheAnt  
+
                 --with-ant-home=/opt/ApacheAnt \
                 --with-system-neon  
+
                 --with-system-neon \
                 --with-firefox
+
                 --disable-mozilla &&
                --with-system-mozilla=firefox &&
 
 
  cd .. &&
 
  cd .. &&
 
  umask 0022 &&
 
  umask 0022 &&
Line 260: Line 268:
 
  cp -r -v openoffice.org{{OO-Version2}} /opt/openoffice-{{OO-Version}} &&
 
  cp -r -v openoffice.org{{OO-Version2}} /opt/openoffice-{{OO-Version}} &&
 
  cp -r -v openoffice.org /opt/openoffice
 
  cp -r -v openoffice.org /opt/openoffice
  rm -v /opt/openoffice-3.1.1/basis-link
+
  ln -v -sf /opt/openoffice/basis3.1 /opt/openoffice-3.1.1/basis-link
ln -s /opt/openoffice/basis3.1 /opt/openoffice-3.1.1/basis-link
 
  
 
Add OpenOffice to ldoconfig
 
Add OpenOffice to ldoconfig
Line 312: Line 319:
  
 
=== 64Bit ===
 
=== 64Bit ===
 +
 +
==This process is not updated to build with 3.1.1==
  
 
Several Makefiles have -mcpu hard coded as PentiumPro, remove this with the following sed:
 
Several Makefiles have -mcpu hard coded as PentiumPro, remove this with the following sed:

Latest revision as of 12:02, 16 December 2009

Download Source:
ftp://ftp.ussg.iu.edu/pub/openoffice/stable/3.1.1/OOo_3.1.1_src_core.tar.bz2
ftp://ftp.ussg.iu.edu/pub/openoffice/stable/3.1.1/OOo_3.1.1_src_binfilter.tar.bz2
ftp://ftp.ussg.iu.edu/pub/openoffice/stable/3.1.1/OOo_3.1.1_src_l10n.tar.bz2
ftp://ftp.ussg.iu.edu/pub/openoffice/stable/3.1.1/OOo_3.1.1_src_system.tar.bz2
Download Patch:
http://svn.cross-lfs.org/svn/repos/patches/OOo/OOo-3.1.1-HEADERFIX-1.patch

Introduction to Open Office

OpenOffice.org is a multiplatform and multilingual office suite that is compatible with all other major office suites.

Project Homepage: http://www.openoffice.org

Dependencies

Required

Recommended

Optional

Configuration Information

NOTE: If building a 64-bit version of Open Office using Sun's Java, you will need version 1.6 to complete the build successfully. It has been reported that Blackdown's current stable version of Java will successfully build Open Office.

The following are some configuration options that can be passed to Open Office. Each can be passed as an enable/disable or as a with/without option.

--disable-ldap: disables the use of LDAP backend via Netscape/Mozilla or OpenLDAP.
--enable-lockdown: enables the gconf integration work in OOo.
--enable-libsn: enables the use of libstartup-notification.
--disable-mozilla: build without the mozilla provided by OO.
--disable-odk: disable building the office development kit.
--disable-qadevooo: disable building the OO.o qa testsuites.
--disable-fontooo: disable FontOOo; useful if using FontConfig.
--disable-mathmldtd: disable mathmldtd.
--enable-evolution2: Enable the built-in evolution 2 addressbook connectivity.
--disable-cups: disable cups support.
--disable-fontconfig: disable support for the fontconfig library.
--disable-gtk: disable use of the Gtk+ vclplug.
--disable-systray: do not build the system tray quickstarter.
--enable-cairo: use the Cairo canvas backend.
--disable-gnome-vfs: disable the use of the Gnome VFS.
--enable-kde: use Qt/KDE vclplug.
--disable-kdeab: disable the KDE address book support.
--disable-binfilter: do not build the legacy binary file formats filters. These filters allow use of older Start Office formats.
--disable-pasf: disable support for sound using portaudio/sndfile.
--disable-pam: disable pam support.
--disable-neon: disable neon and the compilation of webdav binding.
--with-openldap: enables the use of the OpenLDAP.
--with-firefox: use Firefox instead of Mozilla Suite for building. Use in conjunction with --with-system-mozilla.
--with-xulrunner: use XULRunner instead of Mozilla Suite for building. Use in conjunction with --with-system-mozilla.
--without-fonts do not build Bitstream Vera fonts.
--with-package-format: specify package format(s) for OOo installsets.
--with-system-stdlibs: use libstdc++/libgcc_s already on system.
--with-mozilla-version: choose which version of mozilla to use while building mozilla. Default: 1.7.5.
--with-mozilla-toolkit: choose which GUI toolkit to use while building mozilla components. Default: gtk2
--without-myspell-dicts: do not build the myspell dictionaries.
--without-nas: removes nas support.
--with-system-libs: use libs already on system.
--with-system-zlib: use zlib already on system.
--with-system-jpeg: use jpeg already on system.
--with-system-expat: use expat already on system.
--with-system-freetype: use freetype already on system.
--with-system-libwpd: use libwpd already on system.
--with-system-libxml: use libxml already on system.
--with-system-python: use python already on system.
--with-system-db: use berkeley db already on system.
--with-system-odbc-headers: use the odbc headers already on system.
--with-system-curl: use curl already on system.
--with-system-boost: use boost already on system.
--with-system-nas: use nas already on system.
--with-system-sndfile: use sndfile already on system.
--with-system-portaudio: use portaudio already on system.
--with-system-neon: use neon already on system.
--with-system-myspell: use myspell already on system.
--with-system-mozilla: use mozilla already on system.
--with-java: build with[out] Java support.
--with-lang: build OpenOffice.org with additional language support. English (US) is always included by default. Separate multiple languages with a space.
--with-dict: build OpenOffice.org with dictionary support.
--with-build-version: add a custom version tag that will appear in the Help/About box for QA purposes.

Non-Multilib

Add a few things needed by OpenOffice

If you wish to use --with-firefox --with-system-mozilla=firefox you will need to add the following pkgconfig files. They are assuming firefox-3.5.2 and a install directory of /opt. Also firefox will need to be compiled and installed with LDAP support

cat > /usr/lib/pkgconfig/firefox-plugin.pc  << "EOF"
prefix=/opt/firefox-3.5.2
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
datarootdir=${prefix}/share

Name: Mozilla Plug-In API
Description: Mozilla Plug-In API
Version: 3.5
Requires: firefox-xpcom = 3.5
Cflags: -DXP_UNIX -I${includedir}/java -I${includedir}/plugin
EOF
cat >  /usr/lib/pkgconfig/firefox-xpcom.pc << "EOF"
prefix=/opt/firefox-3.5.2
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
datarootdir=${prefix}/share

idldir=IDLDIR
Name: XPCOM
Description: The Mozilla Cross Platform Component Library
Version: 3.5
REQUIRES_NSPR
Libs: -L${libdir} -R${libdir} NSPR_RUNPATH -lxpcom -lxul NSPR_LIB
Cflags:-I${includedir} -I${includedir}/xpcom -I${includedir}/pref -I${includedir}/string -I${includedir}/expat -I${includedir}/ gtkembedmoz NSPR_INCLUDE
EOF

On Pure64 builds

ln -s /usr/lib/libjpeg.so /usr/lib64/libjpeg.so 

Configure the package, adding any configuration options you desire: It will take some checking and testing depending on your system and package versions. This script was tested with a successful build. Build time on a 3Ghz Intel runs about 2 hours, So Enjoy!

touch external/unowinreg/unowinreg.dll
patch -Np1 -i ../OOo-3.1.1-HEADERFIX-1.patch
./configure --prefix=/opt/openoffice-3.1.1 \
                --enable-libart \
                --disable-fontooo \
                --without-fonts \
                --with-system-stdlibs \
                --with-system-freetype \
                --with-system-expat \
                --with-system-libxml \
                --with-system-zlib \
                --with-build-version=CBLFS \
                --with-package-format=native \
                --disable-binfilter \
                --with-system-cairo \
                --enable-cairo \
                --enable-opengl \
                --enable-dbus \
                --with-system-openssl \
                --with-system-jpeg \
                --with-system-python \ 
                --with-system-poppler \
                --with-system-curl \
                --with-ant-home=/opt/ApacheAnt \
                --with-system-neon \
                --disable-mozilla &&
cd .. &&
umask 0022 &&
unset LANG LC_ALL

Create the Open Office make utility and set the environment variables for the build:

./bootstrap &&
source Linux*.Set.sh

Compile the package:

dmake

To build a single "project" as it is referred to by Open Office, enter the project's directory and execute:

build &&
deliver

Install the package:

cd instsetoo_native/unxlngx6.pro/OpenOffice/native/install/en-US/linux-2.6*/buildroot/opt &&
cp -r -v openoffice.org3 /opt/openoffice-3.1.1 &&
cp -r -v openoffice.org /opt/openoffice
ln -v -sf /opt/openoffice/basis3.1 /opt/openoffice-3.1.1/basis-link

Add OpenOffice to ldoconfig

cat >> /etc/ld.so.conf << "EOF"
# Begin OpenOffice addition to /etc/ld.so.conf
/opt/openoffice/ure/lib
/opt/openoffice/basis3.1/program
# End OpenOffice addition
EOF
ldconfig

Create links in your $PATH to each program in the Open Office suite:

for appl in sbase scalc sdraw simpress smath soffice spadmin swriter
do
    ln -v -sf /opt/openoffice-3.1.1/program/$appl /usr/bin/$appl
done

Install the Open Office icons:

cd ../../../../../../../../../sysui/desktop/icons &&
install -v -d /usr/share/icons/{HighContrast,hicolor,locolor} -m755 &&
cp -r -v hicolor/*x* /usr/share/icons/hicolor &&
cp -r -v locolor/*x* /usr/share/icons/locolor

If you have desktop-file-utils installed, create desktop files for each application in the Open Office suite:

install -v -d /usr/share/applications -m 755 &&
cd /opt/openoffice-3.1.1/share/xdg/ &&
for appl in *.desktop
do
    sed -i '/Exec/d' $appl
    echo "Exec=/usr/bin/s`echo $appl | sed 's/.desktop//'`" >> $appl
    sed -i '/Icon/d' $appl
    echo "Icon=`echo $appl | sed 's/.desktop//'`" >> $appl
done &&
sed -i 's@bin/sprinteradmin@bin/spadmin@' printeradmin.desktop &&
cp -v *.desktop /usr/share/applications

Multilib

32Bit

To do ...

N32

To do ...

64Bit

This process is not updated to build with 3.1.1

Several Makefiles have -mcpu hard coded as PentiumPro, remove this with the following sed:

sed -i '/^ARCH_FLAGS\*=/d' solenv/inc/unx{lngi{4,5,6},fbsdi}.mk

Configure the package, adding any configuration options you desire:

touch external/unowinreg/unowinreg.dll &&
cd config_office/ &&
autoreconf &&
USE_ARCH=64 CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/opt/openoffice-3.1.1 \
--libdir=/opt/openoffice-3.1.1/lib64 --enable-libart \
--disable-fontooo --without-fonts --with-system-stdlibs --with-system-freetype \
--with-system-expat --with-system-libxml --with-system-zlib \
--with-build-version=CBLFS --with-package-format=native --disable-binfilter &&
cd .. &&
umask 0022 &&
unset LANG LC_ALL

Create the Open Office make utility and set the environment variables for the build:

./bootstrap &&
source LinuxX86-64Env.Set.sh

Compile the package:

dmake

To build a single "project" as it is referred to by Open Office, enter the project's directory and execute:

build &&
deliver

Install the package:

cd instsetoo_native/unxlngx6.pro/OpenOffice/native/install/en-US/linux-2.6-x86_64/buildroot/opt &&
cp -r -v openoffice.org3 /opt/openoffice-3.1.1

Create links in your $PATH to each program in the Open Office suite:

for appl in sbase scalc sdraw simpress smath soffice spadmin swriter
do
    ln -v -sf /opt/openoffice-3.1.1/program/$appl /usr/bin/$appl
done

Install the Open Office icons:

cd ../../../../../../../../../sysui/desktop/icons &&
install -v -d /usr/share/icons/{HighContrast,hicolor,locolor} -m755 &&
cp -r -v HighContrast/*x* /usr/share/icons/HighContrast &&
cp -r -v hicolor/*x* /usr/share/icons/hicolor &&
cp -r -v locolor/*x* /usr/share/icons/locolor

If you have desktop-file-utils installed, create desktop files for each application in the Open Office suite:

install -v -d /usr/share/applications -m 755 &&
cd /opt/openoffice-3.1.1/share/xdg/ &&
for appl in *.desktop
do
    sed -i '/Exec/d' $appl
    echo "Exec=/usr/bin/s`echo $appl | sed 's/.desktop//'`" >> $appl
    sed -i '/Icon/d' $appl
    echo "Icon=`echo $appl | sed 's/.desktop//'`" >> $appl
done &&
sed -i 's@bin/sprinteradmin@bin/spadmin@' printeradmin.desktop &&
cp -v *.desktop /usr/share/applications

Contents

Installed Directories: /opt/openoffice-3.1.1
Installed Programs: sbase, scalc, sdraw, simpress, smath, soffice, spadmin, and swriter
Installed Libraries: Various Open Office libraries.

Short Descriptions

sbase is a desktop database program.
scalc is a spreadsheet program.
sdraw is a drawing program.
simpress is a program for creating presentations.
smath is a program for editing mathematical functions.
soffice is a "wrapper" program from which all of the Open Office programs can be accessed.
spadmin is the Open Office printer administration program.
swriter is a word processor.