LibreOffice-24.2.0

Introdução ao LibreOffice

LibreOffice é uma suíte de escritório completa. É amplamente compatível com o Microsoft Office e é descendente do OpenOffice.org.

Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.1.

Informação do Pacote

  • Transferência Central: https://download.documentfoundation.org/libreoffice/src/24.2.0/libreoffice-24.2.0.3.tar.xz

  • Soma de verificação MD5 da Transferência Central: d82a556fa5aec1a5d08e0b11363ee936

  • Tamanho da Transferência Central: 268 MB

  • Espaço em disco estimado exigido: 11 GB incluindo os arquivos adicionais se baixados durante a construção (729 MB instalado). Instalar o conjunto inteiro de idiomas exige mais que 25 GB (cerca de 3 GB instalado)

  • Tempo de construção estimado: 30 UPC com paralelismo=8 (variará devido ao tempo de transferência)

Transferências Adicionais

[Nota]

Nota

Cerca de oitenta (80) pequenos tarballs e arquivos zip serão baixados durante a construção. O tempo de transferência variará com a velocidade local da Internet e carga do servidor. O tempo de transferência é de cerca de três (03) minutos em uma conexão de fibra e provavelmente não muito mais que dez (10) minutos em uma conexão ADSL. Se você não tiver instalado um ou mais das seguintes dependências, elas também serão baixados durante a construção.

Dependências do LibreOffice

Exigidas

Archive-Zip-1.68, UnZip-6.0, Wget-1.21.4, Which-2.21 e Zip-3.0

[Nota]

Nota

Uma conexão com a Internet é necessária para construir esse pacote.

Recomendadas

[Nota]

Nota

A maioria desses pacotes é recomendada porque, se não estiverem instalados, o processo de construção compilará e instalará a própria versão dela (geralmente mais antiga), com o efeito colateral de aumentar ambos, espaço em disco de construção e instalado, juntamente com aumentar o tempo de construção.

Opcionais

Avahi-0.8, BlueZ-5.72, DConf-0.40.0, desktop-file-utils-0.27, Doxygen-1.10.0 (não relevante se usar --disable-odk), evolution-data-server-3.50.4, GDB-14.1, GnuTLS-3.8.3, KDE Frameworks-5.115.0, libpaper-2.1.3, MariaDB-10.11.7 ou MySQL, MIT Kerberos V5-1.21.2, NASM-2.16.01, (Qt-5.15.12 ou qt-alternate-5.15.12), Qt-6.6.2, SANE-1.2.1, telepathy-glib-0.24.2, Valgrind-3.22.0, VLC-3.0.20, Apache Commons Codec, Apache Commons HttpClient, Apache Commons Lang, Apache Commons Logging, BeanShell, box2d, CoinMP, Cppunit, Firebird, glyphy, Gnome VFS, hamcrest, Hunspell, Hyphen, iwyu, junit4, libabw, libcdr, libcmis, libebook, libepubgen, libetonyek, libexttextcat, libfreehand, liblangtag, libmspub, libmwaw, libnumbertext, libodfgen, libpagemaker, libqrcodegen, libqxp, librevenge (Importador de Documento WordPerfect), libstaroffice, libvisio, libwpd, libwpg, libwps, libzmf, lp_solve, mdds, MyThes, odfvalidator, officeotron, OpenCOLLADA, Orcus, SystemTap e VIGRA

Existem muitas dependências opcionais não listadas aqui. Elas podem ser encontrados no arquivo download.lst no diretório do fonte.

Observações de Editor(a): https://wiki.linuxfromscratch.org/blfs/wiki/libreoffice

Instalação do LibreOffice

Primeiro, corrija uma falha de construção com libxml2 e um defeito com vinculação para zlib:

patch -Np1 -i ../libreoffice-24.2.0.3-consolidated_fixes-1.patch

Em seguida, corrija uma falha de construção com ICU-74+:

sed -e /LBCM/d -i i18npool/source/breakiterator/data/line.txt

Se você tiver baixado os tarballs de dicionários, ajuda e de traduções, crie links simbólicos para eles a partir do diretório do fonte, de forma que não sejam baixados novamente:

install -dm755 external/tarballs &&
ln -sv ../../../libreoffice-dictionaries-24.2.0.3.tar.xz external/tarballs/ &&
ln -sv ../../../libreoffice-help-24.2.0.3.tar.xz         external/tarballs/ &&
ln -sv ../../../libreoffice-translations-24.2.0.3.tar.xz external/tarballs/

As instruções no pacote desempacotam alguns tarballs em um local que não pode ser encontrado posteriormente. Crie alguns links simbólicos para ajudar o sistema de construção:

ln -sv src/libreoffice-help-24.2.0.3/helpcontent2/ &&
ln -sv src/libreoffice-dictionaries-24.2.0.3/dictionaries/ &&
ln -sv src/libreoffice-translations-24.2.0.3/translations/
[Nota]

Nota

Durante o processo de construção, alguns pacotes serão baixados (incluindo aqueles listados como dependências recomendadas e opcionais) se eles não estiverem presentes no sistema. Por causa disso, o tempo de construção possivelmente varie do horário publicado mais que o normal.

Devido ao grande tamanho do pacote, você possivelmente prefira instalá-lo em /opt, em vez de /usr. Dependendo da tua escolha, substitua <PREFIX> por /usr ou por /opt/libreoffice-24.2.0.3:

export LO_PREFIX=<PREFIXO>

Os locais "fr" e "en-GB", que você encontrará abaixo, são apenas exemplos; você deveria mudá-los para atender às tuas necessidades - você pode querer ler as "Explicações do Comando", mais abaixo, antes de continuar.

[Nota]

Nota

Se você configurou a variável de ambiente ACLOCAL para suportar a instalação do Xorg em /opt, você precisará desconfigurá-la para esse pacote.

Se você estiver construir em uma máquina de 32 bits, CFLAGS está configurada como -Os, o que quebra a construção. Evite isso emitindo:

case $(uname -m) in
   i?86) sed /-Os/d -i solenv/gbuild/platform/LINUX_INTEL_GCC.mk ;;
esac

Prepare o LibreOffice para compilação executando os seguintes comandos:

sed -e "/gzip -f/d"   \
    -e "s|.1.gz|.1|g" \
    -i bin/distro-install-desktop-integration &&

sed -e "/distro-install-file-lists/d" -i Makefile.in &&

./autogen.sh --prefix=$LO_PREFIX         \
             --sysconfdir=/etc           \
             --with-vendor=BLFS          \
             --with-lang='fr en-GB'      \
             --with-help                 \
             --with-myspell-dicts        \
             --without-junit             \
             --without-system-dicts      \
             --disable-dconf             \
             --disable-odk               \
             --enable-release-build=yes  \
             --enable-python=system      \
             --with-jdk-home=/opt/jdk    \
             --with-system-boost         \
             --with-system-clucene       \
             --with-system-curl          \
             --with-system-epoxy         \
             --with-system-expat         \
             --with-system-glm           \
             --with-system-gpgmepp       \
             --with-system-graphite      \
             --with-system-harfbuzz      \
             --with-system-icu           \
             --with-system-jpeg          \
             --with-system-lcms2         \
             --with-system-libatomic_ops \
             --with-system-libpng        \
             --with-system-libxml        \
             --with-system-nss           \
             --with-system-odbc          \
             --with-system-openldap      \
             --with-system-openssl       \
             --with-system-poppler       \
             --with-system-postgresql    \
             --with-system-redland       \
             --with-system-libtiff       \
             --with-system-libwebp       \
             --with-system-zlib

Construa o pacote:

make build

Agora, como o(a) usuário(a) root:

make distro-pack-install

Se instalado em /opt/libreoffice-24.2.0.3, alguns passos adicionais são necessários. Emita os seguintes comandos como o(a) usuário(a) root:

if [ "$LO_PREFIX" != "/usr" ]; then

  # Este link simbólico é necessário para as entradas do menu da área de trabalho
  ln -svf $LO_PREFIX/lib/libreoffice/program/soffice /usr/bin/libreoffice &&

  # Configure um local genérico independente do número da versão
  ln -sfv $LO_PREFIX /opt/libreoffice

  # Ícones
  mkdir -vp /usr/share/pixmaps
  for i in $LO_PREFIX/share/icons/hicolor/32x32/apps/*; do
    ln -svf $i /usr/share/pixmaps
  done &&

  # Entradas do menu da área de trabalho
  for i in $LO_PREFIX/lib/libreoffice/share/xdg/*; do
    ln -svf $i /usr/share/applications/libreoffice-$(basename $i)
  done &&

  # Páginas de manual
  for i in $LO_PREFIX/share/man/man1/*; do
    ln -svf $i /usr/share/man/man1/
  done

  unset i
fi

Se você tiver instalado o desktop-file-utils-0.27 e desejar atualizar a base de dados MIME, emita, como o(a) usuário(a) root:

update-desktop-database

A suíte e os módulos principais podem ser iniciados a partir do menu. A partir de um terminal, a suíte pode ser iniciada com o comando libreoffice e os módulos com o comando libreoffice --<módulo>, respectivamente, onde <módulo> é base, calc, draw, impress, math, web ou writer. Os módulos não podem ser iniciados usando os nomes deles de script de iniciação do shell (veja-se "Aplicativos Instalados", abaixo), se LO_PREFIX for diferente de /usr, a menos que o diretório $LO_PREFIX/bin seja adicionado ao PATH.

Explicações do Comando

sed -e ...: O primeiro sed evita a compressão das páginas de manual e o segundo impede a instalação de falhar.

--with-vendor=BLFS: Essa chave configura BLFS como o fornecedor mencionado quando você clica em "Sobre" a partir do menu Ajuda na barra de ferramentas.

--with-lang='fr en-GB': Essa chave configura quais idiomas suportar. Para listar vários idiomas, separe-os com um espaço. Para todos os idiomas, use --with-lang=ALL. Observe que o arquivo de tradução não é necessário e não seria baixado se usar somente en-US como um idioma.

[Nota]

Nota

Para uma lista dos idiomas disponíveis, olhe em solenv/inc/langlist.mk.

--with-help: Sem essa chave, os arquivos de ajuda não são construídos.

--with-jdk-home=/opt/jdk: Esse parâmetro silenciará um aviso de que o conjunto de comandos sequenciais de configuração tentou encontrar JAVA_HOME automaticamente (mesmo que isso seja passado no ambiente). Omita isso se você desabilitou o java.

--with-myspell-dicts: Essa chave adiciona dicionários myspell ao conjunto de instalação do LibreOffice.

--with-system-boost: Essa chave habilita usar o boost do sistema. De tempos em tempos, versões recentes do boost quebram a construção do libreoffice. Nesse caso, é possível usar a cópia agrupada do boost removendo esse sinalizador.

--disable-dconf: Essa chave desabilita compilar o LibreOffice com o suporte do sistema de configuração GNOME DConf.

--without-junit: Essa chave desabilita os testes para o controlador obsoleto HSQLDB que é escrito em Java.

--without-system-dicts: Essa chave desabilita o uso de dicionários originários de caminhos do sistema, de forma que aqueles instalados por esse pacote sejam usados.

--disable-odk: Essa chave desabilita instalar o kit de desenvolvimento do Office. Remova se você quiser desenvolver um aplicativo baseado no LibreOffice.

--enable-release-build=yes: Essa chave habilita uma Construção de Lançamento. O LibreOffice pode ser construído como uma Construção de Lançamento ou como uma Construção de Desenvolvedor(a), porque os caminhos padrão de instalação deles e caminhos de perfil de usuário(a) são diferentes. A Construção de Desenvolvedor(a) exibe as palavras "Dev" e "Beta" em vários lugares (por exemplo, menu e tela inicial).

--enable-python=system: Essa chave diz ao LibreOffice para usar o Python 3 instalado no sistema em vez daquele empacotado.

--with-system-*: Essas chaves evitam que o LibreOffice tente compilar as próprias versões dele dessas dependências. Se você não tiver instalado algumas das dependências, remova as chaves correspondentes.

make distro-pack-install: Isso faz uma instalação normal, mas se você adicionar uma variável de ambiente DESTDIR, ela também instalará um monte de arquivos (de texto) gid_Module_* no DESTDIR, para ajudar distribuições que queiram quebrar o pacote em partes.

--with-parallelism=<soma>: Essa chave diz ao LibreOffice para usar <soma> Elementos de Processamento de CPU para compilar em paralelo. (Não inclua colchetes angulares literais). O padrão é o de usar todos os Elementos de Processamento disponíveis no sistema.

--disable-cups: Use essa chave se você não precisar de suporte para impressão.

--disable-dbus: Use essa chave se você não tiver instalado o D-Bus-1.8.0 ou posterior. Ela também desabilita o suporte a Bluetooth e a instalação de fontes via PackageKit.

--disable-firebird-sdbc: Por padrão, a habilidade de conectar-se a uma base de dados firebird está habilitada. Adicione essa chave se você não precisar desse recurso.

--disable-gstreamer-1-0: Use essa chave se você não tiver instalado o gst-plugins-base-1.22.10.

--disable-postgresql-sdbc: Essa chave desabilita compilar o LibreOffice com a habilidade de conectar-se a uma base de dados PostgreSQL. Use-a se você não tiver instalado o PostgreSQL e não quiser que o LibreOffice compile a cópia empacotada dele.

--disable-skia: Use Cairo-1.18.0 para renderizar em vez de skia.

--enable-gtk3-kde5: Essa chave permite que a Visual Class Library, que é responsável pelas pequenas engenhocas, seja construída com caixas de diálogo de arquivo KF5 se GTK+-3, Qt5 e Plasma estiverem todos disponíveis.

--enable-lto: Essa chave habilitará o Link Time Optimization, o que resulta em bibliotecas um pouco menores (cerca de 40 MB). Diz-se que isso faz com que os aplicativos do LibreOffice carreguem mais rápido (e possivelmente executem mais rápido, por exemplo, ao recalcular uma planilha). Em uma máquina de 8 Elementos de Processamento com 16 GB de memória, a diferença nos tempos de compilação foi mínima, mas 2 GB extras foram usados para os arquivos de trabalho. Em máquinas com menos processadores ou falta de memória, a compilação pode ser muito mais lenta.

--without-java: Essa chave desabilita o suporte a Java no LibreOffice. Java é necessário para o controlador obsoleto HSQLDB, que permite ler bases de dados criadas por outros aplicativos ou em versões anteriores do libreoffice base. Também é necessário para alguns componentes opcionais de interface de usuário(a).

--without-fonts: LibreOffice inclui diversas fontes TrueType de terceiros(as). Se você já tiver instalado algumas ou todas as mesmas fontes, possivelmente prefira usar as versões do sistema.

--enable-kf5: Constrói com integração KDE/Plasma. Se o (Qt-5.15.12 ou qt-alternate-5.15.12) e (ou) o KDE Frameworks-5.115.0 não estiverem instalados em /usr, os diretórios de inclusão e biblioteca precisão ser especificados em QT5INC, QT5LIB, KF5INC e KF5LIB, respectivamente.

--enable-evolution2: Habilita o suporte para catálogos de endereços do Evolution por meio do Servidor de Dados do Evolution. Observe que o Servidor de Dados do Evolution precisa estar instalado para esse recurso funcionar.

--enable-qt5: Essa chave habilita suporte para integração com Qt5 e o mecanismo de temas do Qt5. Se (Qt-5.15.12 ou qt-alternate-5.15.12) não estiver instalado em /usr, os diretórios de inclusão e biblioteca precisarão ser especificados nas variáveis de ambiente QT5INC e QT5LIB.

--enable-qt5: Essa chave habilita suporte para integração com Qt6 e o mecanismo de temas do Qt6. Se Qt-6.6.2 não estiver instalado em /usr, os diretórios de inclusão e biblioteca precisarão ser especificados nas variáveis de ambiente QT6INC e QT6LIB.

Conteúdo

Aplicativos Instalados: libreoffice, lobase, localc, lodraw, loffice, lofromtemplate, loimpress, lomath, loweb, lowriter, soffice e unopkg; vários aplicativos sob $LO_PREFIX/lib/libreoffice/program
Bibliotecas Instaladas: várias bibliotecas sob $LO_PREFIX/lib/libreoffice/program
Diretório Instalado: $LO_PREFIX/lib/libreoffice

Descrições Curtas

libreoffice (ou soffice)

é a suíte principal do libreoffice (link simbólico para $LO_PREFIX/lib/libreoffice/program/soffice)

lobase

é o conjunto de comandos sequenciais de iniciação do shell do módulo gerenciador de base de dados

localc

é o conjunto de comandos sequenciais de iniciação do shell do módulo de planilha

lodraw

é o conjunto de comandos sequenciais de iniciação do shell do módulo do editor de gráficos vetoriais e da ferramenta de diagramação

loimpress

é o conjunto de comandos sequenciais de iniciação do shell do módulo de exibição e o editor de apresentações (PowerPoint)

lomath

é o conjunto de comandos sequenciais de iniciação do shell do módulo do editor de fórmulas matemáticas

loweb

é o conjunto de comandos sequenciais de iniciação do shell do módulo do editor de HTML

lowriter

é o conjunto de comandos sequenciais de iniciação do shell do módulo do processador de texto

unopkg

é uma ferramenta para gerenciar extensões do LibreOffice a partir da linha de comando