Difference between revisions of "RU/development/qa/run ooo versions parallel"
(Применён шаблон {{OOo}}) |
|||
(56 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | {{DISPLAYTITLE:Установка {{OOo}} разных версий в одну систему}} | + | <section begin=title /><noinclude>{{DISPLAYTITLE:Контроль качества: </noinclude>Установка {{OOo}} разных версий в одну систему<noinclude>}}</noinclude><section end=title /> |
− | + | {{BreadCrumbL10n}} | |
− | |||
− | |||
− | |||
− | + | ==Вступление== | |
+ | Для оказания содействия в исправлении ошибок {{OOo}} достаточно использовать в повседневной работе DEV-сборку и сообщать об обнаруженных ошибках. | ||
− | + | Стабильные версии, по умолчанию, устанавливается в {{Path|/opt}} на Linux и {{Path|c:\Program Files}} на Windows. Например, {{OOo}} 3.2 ставится в папку {{Path|/opt/openoffice.org3}} на *nix системах, и {{Path|C:\Program Files\OpenOffice.org 3\}} на Windows. | |
− | + | DEV-сборка установится в {{Path|/opt/ooo-dev3/}} (*nix) и {{Path|C:\Program Files\OOo-dev 3\}} (Windows). | |
− | В связи с этим, | + | В связи с этим, при необходимости сохранить в системе старые стабильные сборки или установить несколько DEV-сборок, обычный способ установки не позволит этого, так как одна версия перезапишет другую. |
− | + | Изложенные ниже способы дают возможность установки и использования параллельно в одной системе нескольких разных сборок. | |
==Linux== | ==Linux== | ||
− | В этой части | + | В этой части будет показано, как установить любую версию {{OOo}}, распространяемую в пакетах RPM или DEB. В этом методе будет опущена процедура инсталляции. Вместо неё пакеты буду распакованы в заданный пользователем каталог. |
− | + | {{Note|При использовании этого метода не имеет значения, какой тип пакетов (RPM или DEB) используется, а так же не имеет значения, какой формат пакетов использует дистрибутив Linux (то есть, можно распаковать RPM пакеты на Debian, или DEB пакеты на Gentoo).}} | |
− | |||
+ | === Установка {{OOo}} 3.* (трёхслойный {{OOo}}) === | ||
− | Начиная с DEV300m4, в {{OOo}} есть три слоя (см. [[ODF_Toolkit/Efforts/Three-Layer_OOo | Three-Layer OOo]]). Это значит, что | + | Начиная с DEV300m4, в {{OOo}} есть три слоя (см. [[ODF_Toolkit/Efforts/Three-Layer_OOo|Three-Layer {{OOo}}]]). Это значит, что при распаковке пакетов RPM/DEB, будет создано 2 каталога: |
+ | {| | ||
+ | |1. <code>opt/openoffice.org</code> | ||
+ | | | ||
+ | |(содержит '''нижний''' и '''средний''' слои: <code>ure</code> и <code>basis</code>) | ||
+ | |- | ||
+ | |2. <code>opt/openoffice.org3</code> | ||
+ | | | ||
+ | |(содержит '''верхний''' слой) | ||
+ | |} | ||
+ | где, возможно, понадобится заменить {{Path|openoffice.org}} на другое имя. Например: {{Path|ooo-dev}}. | ||
− | + | Так как необходимо создать '''самодостаточную установку''' {{OOo}} (без интеграции с операционной системой, со своим профилем, который не будет пересекаться с профилями других версий), достаточно распаковать пакеты и переименовать этот каталог {{Path|opt}} так, чтобы три слоя по прежнему были вместе. | |
− | |||
− | |||
− | |||
− | |||
− | |||
==== RPM пакеты==== | ==== RPM пакеты==== | ||
− | В | + | В данном примере рассматривается установка |
− | + | :{{Path|OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz}} | |
− | + | загруженного в каталог: | |
− | + | :{{Path|/home/user/download/ooo/}} | |
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | # cd | + | # cd в папку, куда загружен файл *.tar.gz |
− | # | + | # в этом примере файл |
− | # | + | # OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz |
− | # | + | # скачан в папку /home/user/download/ooo/ |
~> cd download/ooo/ | ~> cd download/ooo/ | ||
− | # | + | # создаём временную папку TEMP_INST |
− | |||
~/download/ooo> mkdir TEMP_INST | ~/download/ooo> mkdir TEMP_INST | ||
− | # cd | + | # cd в папку |
~/download/ooo> cd TEMP_INST/ | ~/download/ooo> cd TEMP_INST/ | ||
− | # | + | # распакуем скачанный файл |
− | |||
~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz | ~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-rpm_en-US.tar.gz | ||
− | |||
</source> | </source> | ||
− | Этими командами | + | Этими командами распаковно содержимое пакетов во временную папку. |
− | Теперь | + | Теперь следует перейти в каталог RPMS. |
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # теперь необходимо создать ещё один временный каталог для распаковки файлов, |
− | # | + | # содержащихся в папке RPMS |
~/download/ooo/TEMP_INST> cd DEV300_m77_native_packed-2_en-US.9496/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> mkdir TEMP_ROOT | ||
Line 88: | Line 85: | ||
</source> | </source> | ||
− | + | {{Note|В зависимости от версии изменяются имена файлов и каталогов.}} | |
Распаковать RPM можно за 1 или 2 шага: | Распаковать RPM можно за 1 или 2 шага: | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # за 1 шаг |
~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../o*.rpm; do rpm2cpio $i | cpio -id; done | ~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../o*.rpm; do rpm2cpio $i | cpio -id; done | ||
</source> | </source> | ||
− | + | {{Tip|Использовна звёздочка в конструкии <code>for i in ../o*.rpm</code>, так как среди пакетов может находится пакет с Java Runtime Environment (в данном примере, пакет с JRE называется {{Path|jre-6u19-linux-i586.rpm}}), поэтому <code>../o*.rpm</code> говорит, что нужно распаковывать пакеты с "o" вначале имени файла.}} | |
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # за 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 ../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 | ~/download/ooo/TEMP_INST/DEV300_m77.../RPMS/TEMP_ROOT> for i in ../ooo-dev*.rpm; do rpm2cpio $i | cpio -id; done | ||
</source> | </source> | ||
− | + | По окончании этой операции в каталоге | |
+ | :{{Path|/home/user/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/RPMS/TEMP_ROOT}} | ||
+ | создана папка {{Path|opt}}, в которой есть 2 папки: | ||
+ | :{{Path|/TEMP_ROOT/opt/ooo-dev3}} | ||
+ | :{{Path|/TEMP_ROOT/opt/ooo-dev}} | ||
− | + | Последняя содержит ещё 2 папки: | |
+ | ::{{Path|basis3.3}} | ||
+ | ::{{Path|ure}} | ||
− | + | Теперь можно скопировать или переместить эту папку {{Path|opt}} в любое место. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Теперь | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # в этом примере устанавливается нова версия в /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> mv opt ~/OOo_DEV300_m77 | ||
</source> | </source> | ||
− | + | На последнем шаге требуется удалить все временные файлы: | |
<source lang="bash"> | <source lang="bash"> | ||
Line 139: | Line 135: | ||
==== DEB пакеты==== | ==== DEB пакеты==== | ||
− | В | + | В данном примере рассматривается установка |
− | + | :{{Path|OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz}} | |
− | + | загруженного в каталог | |
− | + | :{{Path|/home/user/download/ooo/}} | |
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | # cd | + | # cd в папку загрузки файла *.tar.gz |
− | # | + | # в этом примере |
− | # | + | # файл OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz |
− | # | + | # загружен в папку /home/user/download/ooo/ |
~> cd download/ooo/ | ~> cd download/ooo/ | ||
− | # | + | # создание временной папки TEMP_INST |
− | |||
~/download/ooo> mkdir TEMP_INST | ~/download/ooo> mkdir TEMP_INST | ||
− | # | + | # переход в неё |
~/download/ooo> cd TEMP_INST/ | ~/download/ooo> cd TEMP_INST/ | ||
− | # | + | # распаковка содержимого скачанного файла |
~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz | ~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz | ||
</source> | </source> | ||
− | + | В результате во временной папке находятся распакованные файлы. | |
− | + | ||
+ | Затем следует перейти в папку DEBS с помощью команды <code>cd</code>, содержащую файлы {{Path|*.deb}}. | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # создание следующей временной папки для распаковки файлов *.deb. |
− | |||
~/download/ooo/TEMP_INST> cd DEV300_m77_native_packed-2_en-US.9496/DEBS/ | ~/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> mkdir TEMP_ROOT | ||
Line 189: | Line 181: | ||
</source> | </source> | ||
− | + | {{Note|В зависимости от версии изменяются имена файлов и каталогов: | |
− | + | #{{Path|ooobasis-dev3.3-*.deb}} - нижний и средний слои | |
− | # | + | #{{Path|ooo-dev3-*.deb}} - верхний слой}} |
− | # | + | Можно распаковать все {{Path|*.deb}} за 1 или 2 шага: |
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # за 1 шаг |
~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../*.deb; do dpkg-deb -x $i . ; done | ~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../*.deb; do dpkg-deb -x $i . ; done | ||
Line 203: | Line 193: | ||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # за 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 ../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 | ~/download/ooo/TEMP_INST/DEV300_m77.../DEBS/TEMP_ROOT> for i in ../ooo-dev*.deb; do dpkg-deb -x $i . ; done | ||
</source> | </source> | ||
− | + | После выполнения этих команд в папке | |
− | + | :{{Path|/home/user/download/ooo/TEMP_INST/DEV300_m77_native_packed-2_en-US.9496/DEBS/TEMP_ROOT}} | |
− | + | есть папка {{Path|opt}}, содержащая 2 вложенные папки: | |
− | + | ::{{Path|/TEMP_ROOT/opt/ooo-dev3}} | |
− | + | ::{{Path|/TEMP_ROOT/opt/ooo-dev}} | |
+ | последняя содержит ещё 2 папки: | ||
+ | :::{{Path|basis3.3}} | ||
+ | :::{{Path|ure}} | ||
− | + | Папка {{Path|opt}} подготовлена и её можно скопировать или переместить в любое место. | |
− | |||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | # | + | # в этом примере устанавливается новая версия в /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> mv opt ~/OOo_DEV300_m77 | ||
</source> | </source> | ||
− | + | В завершении удаляются все временные файлы. | |
<source lang="bash"> | <source lang="bash"> | ||
Line 237: | Line 225: | ||
~download/ooo> rm -rf TEMP_INST/ | ~download/ooo> rm -rf TEMP_INST/ | ||
</source> | </source> | ||
+ | |||
==== Настройки профиля для версий 3.* ==== | ==== Настройки профиля для версий 3.* ==== | ||
− | + | Перед первым запуском установленной сборки, необходимо выполнить изменения в настройках. (Инструкции одинаковы для RPM и DEB.) | |
− | + | По умолчанию {{OOo}} хранит настройки отдельно для каждого пользователя в профиле | |
+ | :{{Path|/home/''user''/.openoffice.org/}} (стабильные сборки и RC) | ||
+ | или | ||
+ | :{{Path|/home/''user''/.ooo-dev/}} (сборки DEV) | ||
+ | Это значит, что нельзя параллельно запустить две сборки, которые обе устанавливаются как {{Path|ooo-dev}} или {{Path|openoffice.org}}, т.к. они одновременно использовали бы один и тот же профиль и конфликтовали ли бы друг с другом. | ||
− | + | Чтобы этого избежать, следует изменить настройки так чтобы {{OOo}} хранил профиль в другом месте. Например в своей корневой папке. В этом случае будет легче и удалять приложение, поскольку и {{OOo}}, и его профиль будут в одном каталоге. | |
− | + | Для этого необходимо отредактировать файл | |
+ | :{{Path|bootstraprc}} | ||
+ | находящийся в папке | ||
+ | :{{Path|program}} | ||
+ | верхнего слоя (т.е. {{Path|ooo-dev3}}) | ||
− | |||
− | + | В данном примере: | |
+ | :{{Path|/home/user/OOo_DEV300_m77/ooo-dev3/program}} | ||
+ | Так как этот файл не имеет прав на запись, необходимо сперва установить права: | ||
<source lang="bash"> | <source lang="bash"> | ||
> cd ~/OOo_DEV300_m77/ooo-dev3/program | > cd ~/OOo_DEV300_m77/ooo-dev3/program | ||
− | ~/OOo_DEV300_m77/ooo-dev3 | + | ~/OOo_DEV300_m77/ooo-dev3/program> chmod +w bootstraprc |
</source> | </source> | ||
− | + | Теперь возможно открыть это файл в текстовом редакторе и изменить ту строку, которая начинается с <code>UserInstallation=</code>: | |
− | + | :<PRE>UserInstallation=$ORIGIN/..</PRE> | |
− | <PRE>UserInstallation=$ORIGIN/..</PRE> | ||
− | + | Файл целиком может принять следующий вид: | |
<PRE> | <PRE> | ||
Line 274: | Line 271: | ||
</PRE> | </PRE> | ||
− | + | Таким способом, папка профиля будет располагаться там же, где и сам {{OOo}}, и становится возможным запускать параллельно несколько разных версий. | |
+ | |||
==Windows== | ==Windows== | ||
− | + | В Windows следует выполнить '''"административную установку"''' пакета. Это функция доступна для любого пакета, использующего MSI, и, в основном, это значит - распаковка всех файлов {{Path|*.cab}}. | |
+ | |||
+ | Дистрибутив {{OOo}} для Windows представляет собой один установочный файл (смораспаковывающийся архив), содержащий в себе полный установочный набор файлов (1 файл {{Path|*.exe}} более 100 МБ в размере, вида {{Path|OOo-Dev_DEV300m77_Win_x86_install-wJRE_en-US.exe}}). | ||
− | + | Для текущей задачи следует: | |
+ | * ''запустить его на выполнение''. Будет предложено выбрать каталог для распаковки дистрибутива (например: {{Path|C:\temp\install}}) и произведена сама распаковка; | ||
+ | * после завершения распаковки автоматически будет запущен инсталлятор с приветствием и предложением начать установку. Необходимо щёлкнуть кнопку '''Cancel''' (Отмена). | ||
− | + | Далее необходимо запустить консоль ({{Menu|Пуск|Выполнить...}}, введсти "cmd", нажать {{Key|Enter}} , либо вызвать через меню {{Menu|Программы|Стандартные|Командная строка}}) | |
− | + | В консоли следует ввести: | |
...> c: | ...> c: | ||
c:\> cd \temp\install | c:\> cd \temp\install | ||
− | c:\temp\install> msiexec /a | + | c:\temp\install> msiexec /a ooodev33.msi |
+ | |||
+ | {{Tip|Предполагается, что файл {{Path|ooodev33.msi}} существует в папке {{Path|c:\temp\install}}. Его имя может меняться в зависимости от версии, к примеру, для {{Path|OOO320m17}} имя файла {{Path|openofficeorg32.msi}}, но это должен быть всегда один единственный файл. Используйте его имя.}} | ||
− | + | {{Path|msiexec}} это инструмент для исполнения файлов {{Path|.msi}}. Переключатель '''/a''' инициирует запуск административной установки. Он запускает диалог запроса о целевой папке установки. Следует указать каталог, где будет располагался установленный {{OOo}}. Затем следует щёлкнуть кнопку '''"Install"''' ("Установить") и дождаться окончания установки. | |
− | < | + | {{Note|Следующая команда:<br> |
+ | <nowiki>msiexec /a ooodev33.msi TARGETDIR="c:\Program Files\OOoDev\m77" /qr</nowiki><br> | ||
+ | установит {{OOo}} в папку "C:\Program Files\OOoDev\m77", без диалога и вопросов.}} | ||
− | + | Начиная с '''DEV300m23''', необходимые файлы '''Microsoft Visual C++ runtime''' не содержатся более в установленном {{OOo}}, а вместо этого, устанавливаются во время обычной установки (см. [http://www.openoffice.org/servlets/ReadMsg?list=interface-announce&msgNo=1173 this interface-announce@openoffice.org mail]). Так как во время административной установки это действие не выполняется, следует самостоятельно установить [http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF Пакет Microsoft Visual C++ 2008 Redistributable (x86)] (или эквивалент для другой версии компилятора). | |
− | |||
− | |||
− | |||
=== Профиль === | === Профиль === | ||
− | + | Как и на версиях для Linux, следует сделать так, чтобы профиль {{OOo}} не конфликтовал с другими версиями. Для этого необходимо отредактировать в блокноте файл | |
+ | :{{Path|<OOo_installation>\program\bootstrap.ini}} | ||
+ | и найти строку | ||
+ | :<code>UserInstallation=$SYSUSERCONFIG/OOo-dev</code> | ||
− | + | {{Note|Опять же, последняя часть "OOo-dev" зависит от версии, но строка, которая начинается с <code>UserInstallation</code> - всего одна.}} | |
− | + | Необходимо заменить её на: | |
− | + | :<code>UserInstallation=$ORIGIN/..</code> | |
− | |||
− | |||
− | |||
− | |||
+ | Файл целиком может принять следующий вид: | ||
<pre>[Bootstrap] | <pre>[Bootstrap] | ||
BaseInstallation=${OOO_BASE_DIR} | BaseInstallation=${OOO_BASE_DIR} | ||
Line 322: | Line 325: | ||
</pre> | </pre> | ||
− | + | Теперь настройки пользователя будут храниться в папке {{Path|user}} рядом с папкой {{Path|program}}. Это имеет 2 преимущества: профили не пересекаются, и чтобы удалить программу вместе с настройками пользователя нужно удалить всего одну папку. | |
− | |||
− | + | {{Caution|Все пользователи, работая с этой установкой, будут использовать одни и те же настройки.}} | |
− | |||
− | + | == Настройки для автоматического тестирования == | |
− | [[ | + | Для проведения автоматического тестирования с помощью [[RU/development/qa/vcltesttool|VCL TestTool]], следует проверить настройки. |
− | + | Чтобы '''VCLTestTool''' нашёл папку установки, нужно настроить параметр <code>OOoProgramDir</code> в диалоге настроек VCLTesttool. | |
− | {{ | + | [[Image:Снимок-Настройки-OOoProgramDir.png]] |
+ | {{SignYear|Sancho|А. Е. Харламенков|2010}} | ||
+ | {{RUqaBottom}} |
Latest revision as of 09:37, 6 September 2011
Contents
Вступление
Для оказания содействия в исправлении ошибок OpenOffice.org достаточно использовать в повседневной работе DEV-сборку и сообщать об обнаруженных ошибках.
Стабильные версии, по умолчанию, устанавливается в /opt на Linux и c:\Program Files на Windows. Например, OpenOffice.org 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
В этой части будет показано, как установить любую версию OpenOffice.org, распространяемую в пакетах RPM или DEB. В этом методе будет опущена процедура инсталляции. Вместо неё пакеты буду распакованы в заданный пользователем каталог.
Установка OpenOffice.org 3.* (трёхслойный OpenOffice.org)
Начиная с DEV300m4, в OpenOffice.org есть три слоя (см. Three-Layer OpenOffice.org). Это значит, что при распаковке пакетов RPM/DEB, будет создано 2 каталога:
1. opt/openoffice.org
|
(содержит нижний и средний слои: ure и basis )
| |
2. opt/openoffice.org3
|
(содержит верхний слой) |
где, возможно, понадобится заменить openoffice.org на другое имя. Например: ooo-dev.
Так как необходимо создать самодостаточную установку OpenOffice.org (без интеграции с операционной системой, со своим профилем, который не будет пересекаться с профилями других версий), достаточно распаковать пакеты и переименовать этот каталог 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
# за 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 папки:
- /TEMP_ROOT/opt/ooo-dev3
- /TEMP_ROOT/opt/ooo-dev
Последняя содержит ещё 2 папки:
- basis3.3
- 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
# переход в неё
~/download/ooo> cd TEMP_INST/
# распаковка содержимого скачанного файла
~/download/ooo/TEMP_INST> tar -zxvf ../OOo-Dev_DEV300m77_Linux_x86_install-deb_en-US.tar.gz
В результате во временной папке находятся распакованные файлы.
Затем следует перейти в папку DEBS с помощью команды cd
, содержащую файлы *.deb.
# создание следующей временной папки для распаковки файлов *.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/
В зависимости от версии изменяются имена файлов и каталогов:
|
Можно распаковать все *.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 вложенные папки:
- /TEMP_ROOT/opt/ooo-dev3
- /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, и его профиль будут в одном каталоге.
Для этого необходимо отредактировать файл
- 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.
Дистрибутив OpenOffice.org для Windows представляет собой один установочный файл (смораспаковывающийся архив), содержащий в себе полный установочный набор файлов (1 файл *.exe более 100 МБ в размере, вида OOo-Dev_DEV300m77_Win_x86_install-wJRE_en-US.exe).
Для текущей задачи следует:
- запустить его на выполнение. Будет предложено выбрать каталог для распаковки дистрибутива (например: C:\temp\install) и произведена сама распаковка;
- после завершения распаковки автоматически будет запущен инсталлятор с приветствием и предложением начать установку. Необходимо щёлкнуть кнопку Cancel (Отмена).
Далее необходимо запустить консоль (Пуск → Выполнить..., введсти "cmd", нажать ↵ Enter , либо вызвать через меню Программы → Стандартные → Командная строка)
В консоли следует ввести:
...> c: c:\> cd \temp\install c:\temp\install> msiexec /a ooodev33.msi
msiexec это инструмент для исполнения файлов .msi. Переключатель /a инициирует запуск административной установки. Он запускает диалог запроса о целевой папке установки. Следует указать каталог, где будет располагался установленный OpenOffice.org. Затем следует щёлкнуть кнопку "Install" ("Установить") и дождаться окончания установки.
Следующая команда: msiexec /a ooodev33.msi TARGETDIR="c:\Program Files\OOoDev\m77" /qr |
Начиная с DEV300m23, необходимые файлы Microsoft Visual C++ runtime не содержатся более в установленном OpenOffice.org, а вместо этого, устанавливаются во время обычной установки (см. this interface-announce@openoffice.org mail). Так как во время административной установки это действие не выполняется, следует самостоятельно установить Пакет Microsoft Visual C++ 2008 Redistributable (x86) (или эквивалент для другой версии компилятора).
Профиль
Как и на версиях для Linux, следует сделать так, чтобы профиль OpenOffice.org не конфликтовал с другими версиями. Для этого необходимо отредактировать в блокноте файл
- <OOo_installation>\program\bootstrap.ini
и найти строку
UserInstallation=$SYSUSERCONFIG/OOo-dev
Опять же, последняя часть "OOo-dev" зависит от версии, но строка, которая начинается с UserInstallation - всего одна.
|
Необходимо заменить её на:
UserInstallation=$ORIGIN/..
Файл целиком может принять следующий вид:
[Bootstrap] BaseInstallation=${OOO_BASE_DIR} InstallMode=<installmode> ProductKey=OpenOffice.org 3.2 UserInstallation=$ORIGIN/.. [ErrorReport] ErrorReportPort=80 ErrorReportServer=report.services.openoffice.org
Теперь настройки пользователя будут храниться в папке user рядом с папкой program. Это имеет 2 преимущества: профили не пересекаются, и чтобы удалить программу вместе с настройками пользователя нужно удалить всего одну папку.
Настройки для автоматического тестирования
Для проведения автоматического тестирования с помощью VCL TestTool, следует проверить настройки.
Чтобы VCLTestTool нашёл папку установки, нужно настроить параметр OOoProgramDir
в диалоге настроек VCLTesttool.