Установка Apache OpenOffice разных версий в одну систему

From Apache OpenOffice Wiki
< RU‎ | qa
Revision as of 11:02, 14 May 2010 by Fyva (Talk | contribs)

Jump to: navigation, search

Template:RU/documentation/helpneeded


Для улучшения Apache OpenOffice не обязательно быть программистом, вы можете помогать исправлять ошибки просто установив DEV сборку и используя её как вы обычно это делаете, и докладывать об обнаруженных ошибках.

Обычно, каждая версия устанавливается в свою папку (к примеру, /opt на Linux, Program Files на Windows), например, стабильная сборка Apache OpenOffice 3.2 ставится в папку /opt/openoffice.org3 на *nix системах, и C:\Program Files\OpenOffice.org 3\ на Windows, ну а DEV сборка установится в /opt/ooo-dev3/ (*nix) и C:\Program Files\OOo-dev 3\ (Windows).

В связи с этим, если вы хотите установить несколько DEV сборок или хотите сохранить в системе старые стабильные сборки, обычный способ установки не позволит этого, т.к. одна версия перезапишет другую.

Тут мы объясним, каким способом можно установить параллельно несколько разных сборок.


Linux

В этой части мы покажем, как "установить" любую версию Apache OpenOffice, распространяемую в пакетах RPM или DEB. На самом деле, мы не будем ничего устанавливать, а просто распакуем пакеты.

Заметьте, что с этим методом не имеет значения, распаковывали вы RPM или DEB, и не имет значения, какой формат пакетов использует ваш дистрибутив Linux (т.е., вы можете распаковать RPM пакеты на Debian, или DEB пакеты на Gentoo).

Установка Apache OpenOffice 3.* (трёхслойный OpenOffice.org)

Начиная с DEV300m4, в Apache OpenOffice есть три слоя (см. Three-Layer OOo). Это значит, что если мы распакуем пакеты RPM/DEB, у нас будет 2 директории:

  1. opt/openoffice.org (содержит нижний и средний слои: ure and basis)
  2. opt/openoffice.org3 (содержит верхний слой)

где возможно вам нужно заменить openoffice.org на другое имя продукта типа ooo-dev.

Т.к. мы хотим установить Apache OpenOffice в самодостаточную папку (без интеграции с системой, со своим профилем, который не будет пересекаться с профилями других версий), то нам нужно всего лишь распаковать пакеты и переименовать эту директорию opt так чтобы три слоя по прежнему были вместе.

RPM пакеты

В следующем примере мы "установим"

OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz

который был закачан в папку

/home/user/download/ooo/

# cd в папку, куда вы скачали файл *.tar.gz
# в этом примере мы скачали 
# файл OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz
# в папку /home/user/download/ooo/
 
~> cd download/ooo/
 
# создаём временную папку
# в этом примеру назовём её TEMP_INST
 
~/download/ooo> mkdir TEMP_INST 
 
# cd в папку
 
~/download/ooo> cd TEMP_INST/ 
 
# распакуем скачанный файл
~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz

Этими командами мы распаковали содержимое пакетов во временную папку.

Теперь нам нужно перейти в папку RPMS.

# теперь нам надо создать ещё одну временную папку для распаковки файлов
# содержащихся в папке RPMS
 
~/download/ooo/TEMP_INST> cd DEV300_m77_native_packed-2_en-US.9496/RPMS/ 
 
# в этом примере мы укоротим имя папки: 
# вместо ~/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/RPMS>
# напишем: ~/download/ooo/TEMP_INST/ DEV300_m77.../RPMS>
 
# создадим временную папку, которая и станет окончательной папкой установки OpenOffice.org
 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS> mkdir TEMP_ROOT 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS> cd TEMP_ROOT/

Заметьте, что в зависимости от версии могут быть разные схемы именований файлов.

Распаковать RPM можно за 1 или 2 шага:

# за 1 шаг
 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../o*.rpm; do rpm2cpio $i | cpio -id; done

Заметьте, мы использовали звёздочку так for i in ../o*.rpm, т.к. среди пакетов может находится пакет с Java Runtime Environment (в данном примере, пакет с JRE называется jre-6u19-linux-i586.rpm), поэтому ../o*.rpm говорит, что нужно распаковывать пакеты с "o" вначале имени файла.

# за 2 шага
# нижний и средний слои
 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../openoffice.org*.rpm; do rpm2cpio $i | cpio -id; done 
 
# распакуйте верхний слой
 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../ooo-dev*.rpm; do rpm2cpio $i | cpio -id; done

Теперь мы можем обнаружить в папке

/home/user/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/RPMS/TEMP_ROOT

папку opt, в которой есть 2 папки:

  1. /TEMP_ROOT/opt/ooo-dev3
  2. /TEMP_ROOT/opt/ooo-dev

последняя содержит ещё 2 папки: basis3.3 and ure.

Теперь можно скопировать или переместить эту папку opt куда угодно.

# в этом примере мы "установим" новую версию в /home/user/OOo_DEV300_m77
 
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> mv opt ~/OOo_DEV300_m77

И наконец, удалим все временные файлы:

~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> cd ~/download/ooo/
~download/ooo> rm -rf TEMP_INST/

DEB пакеты

В следующем примере мы "установим" сборку

OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz

закачанную в папку

/home/user/download/ooo/

# cd в папку, куда вы скачали файл *.tar.gz
# в этом примере мы скачали
# файл OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz
# в папку /home/user/download/ooo/
 
~> cd download/ooo/
 
# создайте временную папку, куда будет распаковано содержимое скачанного файла
# в этом примере мы называем эту папку TEMP_INST
 
~/download/ooo> mkdir TEMP_INST 
 
# cd в эту папку
 
~/download/ooo> cd TEMP_INST/ 
 
# рапакуйте содержимое скачанного файла
 
~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz

Теперь у нас во временной папке находятся распакованные файлы.

Теперь нам нужно попасть в папку DEBS с помощью команды cd, там содержатся файлы *.debs.

# теперь нам нужно создать другую временную папку, куда будут распакованы файлы *.deb.
 
~/download/ooo/TEMP_INST> cd DEV300_m77_native_packed-2_en-US.9496/DEBS/ 
 
# мы сократим имя папки:
# вместо ~/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/DEBS>
# напишем ~/download/ooo/TEMP_INST/DEV300_m77.../DEBS>
 
# создадим временную папку, в которой будет располагаться установленный OpenOffice.org
 
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS> mkdir TEMP_ROOT 
~/download/ooo/TEMP_INST/DEV300_m77 .../DEBS> cd TEMP_ROOT/

Заметьте, что в зависимости от версии OOo, у нас могут быть разные схемы именования файлов:

  1. openoffice.org-*.deb - нижний и средний слои
  2. ooo-dev-*.deb - верхний слой

Можно распаковать все *.deb за 1 или 2 шага:

# за 1 шаг
 
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../*.deb; do dpkg-deb -x $i . ; done
# за 2 шага
# средний и нижний слои
 
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../openoffice.org*.deb; do dpkg-deb -x $i . ; done 
 
# верхний слой
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../ooo-dev*.deb; do dpkg-deb -x $i . ; done

Мы обнаружим после этих команд, что в папке

/home/user/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/DEBS/TEMP_ROOT

есть папка opt, в которой есть 2 папки:

  1. /TEMP_ROOT/opt/ooo-dev3
  2. /TEMP_ROOT/opt/ooo-dev

последняя содержит ещё 2 папки: basis3.3 и ure.

Теперь нужно всего лишь скопировать или переместить эту папку opt куда угодно.

# в этом примере мы "установим" новую версию в /home/user/OOo_DEV300_m77
 
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> mv opt ~/OOo_DEV300_m77

И наконец, удалим все временные файлы.

~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> cd ~/download/ooo/
~download/ooo> rm -rf TEMP_INST/

Настройки профиля для версий 3.*

Перед тем как запустить программу, нам нужно сделать кое-какие изменения в настройках. (Инструкции одинаковы для RPM и DEB.)

По умолчанию OpenOffice.org хранит настройки отдельно для каждого пользователя в профиле /home/user/.openoffice.org/ (стабильные сборки и RC) или /home/user/.ooo-dev/ (сборки DEV). Это значит, что нельзя параллельно запустить две сборки, которые обе устанавливаются как ooo-dev или openoffice.org, т.к. они одновременно использовали бы один и тот же профиль и мешали бы друг другу.

Чтобы этого избежать мы должны изменить настройки так чтобы OpenOffice.org хранил профиль где-нибудь в другом месте, например в том же самом месте, где находится корневая папка OpenOffice.org, так нам будет легче и удалять потом всё сразу: и OpenOffice.org, и его профиль будут в одной папке.

Для этого нам нужно отредактировать файл bootstraprc, находящийся в папке program верхнего слоя (т.е. ooo-dev3), в данном примере:

/home/user/OOo_DEV300_m77/ooo-dev3/program

Т.к. этот файл не имеет прав на запись, нам нужно сперва это исправить:

> cd ~/OOo_DEV300_m77/ooo-dev3/program
~/OOo_DEV300_m77/ooo-dev3/program> chmod +w bootstraprc

Теперь мы можем открыть это файл в текстовом редакторе и изменить ту строчку, которая начинается с UserInstallation=:

UserInstallation=$ORIGIN/..

Файл целиком может выглядеть теперь так:

[Bootstrap]
BaseInstallation=${OOO_BASE_DIR}
InstallMode=<installmode>
ProductKey=OOo-dev 3.0
UserInstallation=$ORIGIN/..
[ErrorReport]
ErrorReportPort=80
ErrorReportServer=report.services.openoffice.org

Таким способом, папка профиля будет располагаться там же, где и сам OpenOffice.org, и вы сможете запускать одновременно несколько разных версий параллельно.

Windows

На Windows вы должны сделать так называемую административную установку пакета. Это функция доступна для любого пакета, использующего пакета, использующего MSI, и в основном это значит - распаковка всех файлов *.cab.

Если у вас есть установочный файл, содержащий в себе полный установочный набор файлов (1 файл *.exe более 100 МБ в размере, вида OOo-Dev-SDK_DEV300m77_Win_x86_install_en-US.exe ), то вначале дадим ему распаковаться. Для этого просто запустите его, а когда он запустит установщик, нажмить на кнопку Cancel (Отмена).

Предположим, вы распаковали файл в C:\temp\install

Теперь же, откройте консоль (<Windows_Key>+R, с вводом "cmd<enter>", откроет консоль), и там введите:

 ...> c:
 c:\> cd \temp\install
 c:\temp\install> msiexec /a ooodev33.msi

(предполагается, что файл ooodev33.msi существует в папке c:\temp\install . Его имя может меняться в зависимости от версии, к примеру, для OOO320m17 имя файла openofficeorg32.msi, но это должен быть всегда один единственный файл. Используйте его имя.)

msiexec это инструмент для исполнения файлов .msi. Перключатель /a говорит, что установка - административная. Он запускает диалог, который спросит о целевой папке установки - выберите папку, где вы хотите чтобы окончательно располагался установленный Apache OpenOffice. Поом кликните кнопку "Install" ("Установить"), подождите несколько минут, и готово.

Заметка для продвинутых пользователей:

 msiexec /a ooodev33.msi TARGETDIR="c:\Program Files\OOoDev\m77" /qr

устновит Apache OpenOffice в папку "C:\Program Files\OOoDev\m77", без диалога и вопросов.

Beginning with DEV300m23, the necessary Microsoft Visual C++ runtime files are no longer contained in the installed Apache OpenOffice product, but are rather installed into the system during normal installation (see this interface-announce@openoffice.org mail). As this is not done during an administrative installation, you have to install the Microsoft Visual C++ 2008 Redistributable Package (x86) (or equivalent for different compiler versions) yourself.

Профиль

Like with the Linux version above, you need to make sure the user data of the just installed Apache OpenOffice version doesn't conflict with the user data of other installations. To do so, open the file <OOo_installation>\program\bootstrap.ini in a text editor of your choice, and locate the line

 UserInstallation=$SYSUSERCONFIG/OOo-dev2

(Again, the last part of this depends on the concrete version you installed, but there's only one line starting with UserInstallation.)

Change this to

 UserInstallation=$ORIGIN/..

The entire file may now look like this:

[Bootstrap]
BaseInstallation=${OOO_BASE_DIR}
InstallMode=<installmode>
ProductKey=OpenOffice.org 3.2
UserInstallation=$ORIGIN/..
[ErrorReport]
ErrorReportPort=80
ErrorReportServer=report.services.openoffice.org

Now, your user data will be put into a folder user right besides your program folder. Which has two advantages: Different version's user data don't clash anymore, and you can remove the complete installation, including your user data, by simply deleting the installation folder. Be aware, however, that now different people working on the same Windows machine will all work with the same user data, which is unlike a normal installation.

Настройки для автоматического тестирования

If you plan to use an installation for automated testing with VCLTestTool please check Wiki-page to learn what settings must be made.

To let VCLTestTool find the administrative installation it is required to adapt an option named 'OOoProgramDir'. Simply change this to the program-dir in the brand layer of your Apache OpenOffice Installation

VCLTestTool-options-OOoProgramDir.png

Template:RU/documentation/signtransyear

Template:QaВottom

Personal tools
In other languages