libreoffice Поддержка Python Uno для Python 2.7 в Ubuntu Saucy 13.10

Недавно я обновился до Ubuntu 13.10 и обнаружил, что пакет python-uno больше не доступен. Вместо этого я нахожу пакет python3-uno. К сожалению, мне нужна поддержка Python uno libreoffice для Python 2.7, поскольку я пытаюсь использовать Appy POD ( http://appyframework.org/pod.html ), который еще не поддерживает Python 3. Любые идеи как я могу добавить поддержку моих существующих пакетов Ubuntu или есть PPA или что-то вроде того, что я могу получить версию libreoffice, которая поддерживает Python 2.7?

2
задан 25.04.2020, 05:25

3 ответа

Для Ubuntu 13.10 и более поздних версий вам необходимо установить OpenOffice 4.1.1 вручную.

  1. Удалить предыдущую версию:

    sudo apt-get remove libreoffice* openoffice*
    sudo apt-get autoremove
    
  2. Установка Apache OpenOffice 4.1.1

    на 64-разрядную версию Ubuntu:

    wget sourceforge.net/projects/openofficeorg.mirror/files/4.1.1/binaries/en-GB/Apache_OpenOffice_4.1.1_Linux_x86-64_install-deb_en-GB.tar.gz
    tar -xzvf Apache_OpenOffice_4.1.1_Linux_x86-64_install-deb_en-GB.tar.gz
    cd en-GB/DEBS
    sudo dpkg -i *.deb
    cd desktop-integration
    sudo dpkg -i *.deb
    

    в 32-битной Ubuntu:

    wget sourceforge.net/projects/openofficeorg.mirror/files/4.1.1/binaries/en-GB/Apache_OpenOffice_4.1.1_Linux_x86_install-deb_en-GB.tar.gz
    tar -xzvf Apache_OpenOffice_4.1.1_Linux_x86_install-deb_en-GB.tar.gz
    cd en-GB/DEBS
    sudo dpkg -i *.deb
    cd desktop-integration
    sudo dpkg -i *.deb
    
  3. нажмите uno.pth для python2.7

    echo /opt/openoffice4/program |sudo tee /usr/lib/python2.7/dist-packages/uno.pth
    
0
ответ дан 25.04.2020, 05:25

Вот обновленный скрипт для сборки и установки LibreOffice 4.4.7.2 с Python 2.7 в Ubuntu 14.04 из здесь :

#!/bin/bash -xe

sudo apt-get update
sudo apt-get build-dep libreoffice
sudo apt-get install pkg-config

mkdir libreoffice
cd libreoffice
wget https://downloadarchive.documentfoundation.org/libreoffice/old/4.4.7.2/src/libreoffice-4.4.7.2.tar.xz
wget https://downloadarchive.documentfoundation.org/libreoffice/old/4.4.7.2/src/libreoffice-dictionaries-4.4.7.2.tar.xz
wget https://downloadarchive.documentfoundation.org/libreoffice/old/4.4.7.2/src/libreoffice-help-4.4.7.2.tar.xz
wget https://downloadarchive.documentfoundation.org/libreoffice/old/4.4.7.2/src/libreoffice-translations-4.4.7.2.tar.xz

tar -xf libreoffice-4.4.7.2.tar.xz 
tar -xf libreoffice-dictionaries-4.4.7.2.tar.xz 
tar -xf libreoffice-help-4.4.7.2.tar.xz 
tar -xf libreoffice-translations-4.4.7.2.tar.xz 

cd libreoffice-4.4.7.2/
export PYTHON=/usr/bin/python2.7 PYTHON_CFLAGS="$(pkg-config --cflags python-2.7)" PYTHON_LIBS="$(pkg-config --libs python-2.7)"
./autogen.sh --with-package-format=deb --enable-epm
make -j6

sudo dpkg -i workdir/installation/LibreOffice_Dev/deb/install/LibreOfficeDev_4.4.7.2_Linux_x86-64_deb/DEBS/*.deb
# SDK, optional.
# sudo dpkg -i workdir/installation/LibreOffice_Dev_SDK/deb/install/LibreOfficeDev_4.4.7.2_Linux_x86-64_deb_sdk/DEBS/lodevbasis4.4-sdk_4.4.7.2-2_amd64.deb 
sudo apt-get install -f

echo /opt/libreofficedev4.4/program | sudo tee /usr/lib/python2.7/dist-packages/uno.pth

И тогда uno нужен этот код для запустите правильно:

# XXX: LibreOffice UNO bootstrap.
sys.path.append('/opt/libreofficedev4.4/program')
os.putenv('URE_BOOTSTRAP', 'vnd.sun.star.pathname:/opt/libreofficedev4.4/program/fundamentalrc')

его можно поместить прямо в верхнюю часть /opt/libreofficedev4.4/program/uno.py (хотя это и забавно, эти изменения будут потеряны, если вы обновите пакет).

0
ответ дан 25.04.2020, 05:26

См. Этот ответ. https://askubuntu.com/a/418550/4397 В нескольких словах: поддержка python2 в пакетах deb для LibreOffice прекращена, начиная с Ubuntu 13.10. Вы также можете перекомпилировать libreoffice с помощью этого скрипта https://gist.github.com/hbrunn/6f4a007a6ff7f75c0f8b

0
ответ дан 25.04.2020, 05:27

Теги

Похожие вопросы