linuxBean14.04(176)LibreOffice5.4.1のインストール

2017-09-22

旧ブログ

t f B! P L
Linux版とWindows版のバンドルPythonのバージョンを揃えたいのでどちらもPython3.5.4になっているLibreOffice5.4.1をインストールすることにしました。

前の関連記事:linuxBean14.04(175)Anacondaの運用方法を考える


LibreOffice5.4.1のインストール


LibreOffice5.2のバンドルPythonのバージョンがlinuxBean14.04ではPython3.5.0なのに対して、Windows10ではPython3.3.5になっており、含まれるモジュールが違うので不自由でした。

LibreOffice5.4.1ではLinux版もWindows版もバンドルPythonのバージョンは3.5.4になっていました。

私のPCにはLibreOfficeDev 5.4が入っているのでまずそれをアンインストールしました。

sudo apt-get remove --purge libreofficedev5.4.0*

linuxBean14.04へのインストールにはLibreOffice最新版 | LibreOffice - オフィススイートのルネサンスからdeb版をダウンロードしたLibreOffice_5.4.1_Linux_x86_deb.tar.gz、LibreOffice_5.4.1_Linux_x86_deb_langpack_ja.tar.gz、LibreOffice_5.4.1_Linux_x86_deb_sdk.tar.gzを使いました。

それぞれ解凍して、でてきたDEBSフォルダでTerminalを起動しsudo dpkg -i *.*でインストールしました。

LibreOffice_5.4.1_Linux_x86_deb.tar.gzは2回sudo dpkg -i *.*をしないとメニューにアイコンが登録されないことはこれまでと同様です。

最近はオートメーションではofficehelper.pyを使ってパイプ接続しているので、ソケット接続用のアイコンは作りませんでした(LibreOffice5(1)officehelper.bootstrap()を使う)。

linuxBean14.04(173)LibreOffice5.4.0のインストールで仮想マシンを捨てる羽目になるということがあったので、linuxBean14.04のアップデートはまだしていません。

WindowsにはWindowsXPにLibreOffice_5.4.1_Win_x86.msiを使ってインストールしました、、、LibreOfficeは動くのですがPythonマクロは使えないし、コマンドプロンプトでもバンドルPythonは起動できませんでした。

 Pythonは3.5からWindowsXP未対応のようです、、、Windows版のバンドルPythonが3.3でとどまっていたのはこれが理由かもしれませんね。

(2017.11.2追記。WindowsXPにLibreOffice5.4.1をインストールしたところ、マクロセレクターでPythonマクロが表示されなくなっていました。さらにLibreOffice5.4.2をインストールしたところLibreOffice自体が起動しなくなりました、、、)

Windows10 Home 64bitに64bit版LibreOfficeをインストールする


Windows版は結局Windows10 Home 64bitにLibreOffice_5.4.1_Win_x64.msiを使ってインストールしました。

LibreOffice5.2の32bit版がインストールされていたのですが、それは勝手にアンインストールされてしまいました。

C:\Program Files (x86)\LibreOffice 5\program\python-core-3.3.0フォルダだけ残っていたのでそれは削除しました。

Windows10では問題なくPythonマクロが動きました。

英語版に日本語言語パックを追加インストールするLinux版と違ってWindows版で英語版と日本語版を切り替えるには、インストール時に英語も選択しておかないといけません。

今回はそれを知らずに日本語だけインストールしまったので英語を追加インストールします。

LibreOffice_5.4.1_Win_x64.msiを再度起動させるか、スタートボタンを右クリック→アプリと機能、LibreOffice5.4を選択して「変更」ボタンをクリックします。


「変更」を選択して「次へ」。


「追加のユーザーインターフェイス言語」→英語(米国)をクリックして、「この機能はローカルハードドライブにインストールされます。」を選択しました。

あとは「次へ」を選択したインストールを完了させます。

ChromeとFirefoxを起動したままインストールしましたが、日本語版のときはChromeを終了するように指示され、英語版のときはFirefoxを終了するように指示されました、、、何の違い?

次の問題はJRE(Java runtime environment)が認識されない問題です。

今回使用したWindows10ではJavaがすでにインストールしてあり、LibreOffice5.2ではJREが認識されていました。

スタートボタン→Java→Javaの構成。


Javaタブで確認すると1.8.0のx86版がインストールされていました。

libreoffice base 5.1 for mac java runtime issues [closed] - Ask LibreOffice

MacOSではJREではなくJDK(Java Development Kit)をインストールすれば解決するようです。

Troubleshooting Open/LibreOffice and Java (View topic) • Apache OpenOffice Community Forum

WindowsではこのQ&Aに答えがありそうなのですが、Windows10にこれ以上ソフトはインストールしたくないのでまた必要に迫られてから考えたいと思います。

64bit版のJREをインストールすれば解決?


Javaのインストールをせずに、マクロセレクターを起動するたびにでてくるこのダイアログを出ないようにしたいのですが、いまのところやり方がわかりません。
(2017.10.10追記。拡張機能APSOを使うとJavaのことを聞かれずにPythonマクロが実行できるようになります。LibreOffice5(87)Pythonマクロのための拡張機能APSOのインストール参照。)

「いいえ」を選択すると一旦ダイアログはでてこなくなるのですが、LibreOfficeを起動し直すとまた出てきます。

LibreOfficeをインストールするときの注意点: LibreOfficeで行こう!

ここに書いてある「非線形計画法向けソルバー」「Report Builder」「MediaWiki Publisher」の3つをアンイストールしてみましたがダメでした。

「拡張機能」をすべてアンインストールしてJavaScriptもBeanShellのマクロも使えなくしましたが変わりませんでした。

PythonマクロにはJREは不要なはずなのでこのダイアログは出ないようにしてほしいものですね。

 LibreOffice5.4.1で利用可能なPythonモジュール一覧


 LibreOffice5(34)LibreOffice5.2のバンドルPythonで利用可能なモジュール一覧と同様にしてhelp('modules')でモジュール一覧を取得しました。

 ~/.local/lib/python3.5/site-packagesにsites.pthを置いているときはそれをのけておかないとバンドルPythonのモジュール以外も含まれてしまいます。

lib2to3以外のlibで始まるモジュールはsoファイルなので表示は消そうと思ったのですが、結構面倒なのでそのまま表示しています。
pq@HP6730b1:/opt/libreoffice5.4/program$ ./python
Python 3.5.4 (default, Aug 25 2017, 12:59:15) 
[GCC 4.8.2 20140120 (Red Hat 4.8.2-15)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

__future__          getopt              libneon             mmap
__main__            getpass             libnspr4            mock
_ast                gettext             libnss3             modulefinder
_bisect             glob                libnssckbi          msgbox
_bootlocale         grp                 libnssdbm3          multiprocessing
_codecs             gzip                libnssutil3         netrc
_codecs_cn          hashlib             libodbclo           nis
_codecs_hk          heapq               libodfflatxmllo     nntplib
_codecs_iso2022     hmac                liboffacclo         ntpath
_codecs_jp          html                libofficebean       nturl2path
_codecs_kr          http                liboglcanvaslo      numbers
_codecs_tw          imaplib             libooxlo            officehelper
_collections        imghdr              libpasswordcontainerlo opcode
_collections_abc    imp                 libpcrlo            operator
_compat_pickle      importlib           libpdffilterlo      optparse
_compression        inspect             libpdfimportlo      os
_crypt              io                  libpdfiumlo         ossaudiodev
_csv                ipaddress           libplc4             parser
_ctypes             itertools           libplds4            pathlib
_ctypes_test        json                libpostgresql-sdbc-impllo pdb
_datetime           keyword             libpostgresql-sdbclo pgen2
_decimal            lib2to3             libpricinglo        pickle
_dummy_thread       libEngine12         libprotocolhandlerlo pickletools
_elementtree        libOGLTranslo       libproxyfaclo       pipes
_functools          libPresentationMinimizerlo libpython3          pkgutil
_hashlib            libPresenterScreenlo libpythonloaderlo   platform
_heapq              libabplo            libpyuno            plistlib
_imp                libacclo            libqstart_gtklo     poplib
_io                 libaffine_uno_uno   librecentfile       posix
_json               libanalysislo       libreflectionlo     posixpath
_locale             libanimcorelo       libreglo            pprint
_lsprof             libavmediagst       libreslo            profile
_markupbase         libavmediagst_0_10  librptlo            pstats
_multibytecodec     libavmediaogl       librptuilo          pty
_multiprocessing    libbasctllo         librptxmllo         pwd
_opcode             libbasprovlo        libsal_textenclo    py_compile
_operator           libbiblo            libscdlo            pyclbr
_osx_support        libbinaryurplo      libscfiltlo         pydoc
_pickle             libbootstraplo      libsclo             pydoc_data
_posixsubprocess    libcached1          libscnlo            pyexpat
_pydecimal          libcairocanvaslo    libscriptframe      pythonloader
_pyio               libcalclo           libscuilo           pythonscript
_random             libcanvasfactorylo  libsdbc2            pyuno
_sha1               libchartcontrollerlo libsdbtlo           queue
_sha256             libchartcorelo      libsddlo            quopri
_sha512             libchartopengllo    libsdfiltlo         random
_signal             libclewlo           libsdlo             re
_sitebuiltins       libclucene          libsduilo           reprlib
_socket             libcmdmaillo        libsimplecanvaslo   resource
_sre                libcollator_data    libslideshowlo      result
_ssl                libctllo            libsmdlo            rlcompleter
_stat               libcuilo            libsmime3           runner
_string             libdatelo           libsmlo             runpy
_strptime           libdbalo            libsoftokn3         sched
_struct             libdbaselo          libsolverlo         select
_symtable           libdbaxmllo         libspelllo          selectors
_sysconfigdata      libdbmmlo           libsqlite3          shelve
_testbuffer         libdbplo            libsrtrs1           shlex
_testcapi           libdbpool2          libssl3             shutil
_testimportmultiple libdbulo            libstocserviceslo   signal
_testmultiphase     libdeploymentgui    libstoragefdlo      signals
_thread             libdict_ja          libstorelo          site
_threading_local    libdict_zh          libstringresourcelo smtpd
_tracemalloc        libdlgprovlo        libsvgfilterlo      smtplib
_warnings           libembobj           libsvgiolo          sndhdr
_weakref            libemboleobj        libswdlo            socket
_weakrefset         libepoxy            libswlo             socketserver
abc                 libevoablo          libswuilo           spwd
aifc                libevtattlo         libsysshlo          sre_compile
antigravity         libexpwraplo        libt602filterlo     sre_constants
argparse            libfilelo           libtextconv_dict    sre_parse
array               libfirebird_sdbclo  libtextconversiondlgslo ssl
ast                 libflashlo          libtextfdlo         stat
asynchat            libflatlo           libucpchelp1        statistics
asyncore            libforlo            libucpcmis1lo       string
atexit              libforuilo          libucpdav1          stringprep
audioop             libfps_officelo     libucpextlo         struct
base64              libfreebl3          libucpftp1          subprocess
bdb                 libfreeblpriv3      libucpgio1lo        suite
binascii            libfrmlo            libucphier1         sunau
binhex              libfwllo            libucpimagelo       symbol
bisect              libfwmlo            libucppkg1          symtable
builtins            libgcc3_uno         libucptdoc1lo       sys
bz2                 libgielo            libunoidllo         sysconfig
cProfile            libgraphicfilterlo  libunopkgapp        syslog
calendar            libguesslanglo      libunordflo         tabnanny
case                libhsqldb           libunsafe_uno_uno   tarfile
cgi                 libhwplo            libupdatecheckuilo  telnetlib
cgitb               libhyphenlo         libupdatefeedlo     tempfile
chunk               libi18nlangtag      libupdchklo         termios
cmath               libi18nsearchlo     libuuresolverlo     textwrap
cmd                 libicglo            libvbaeventslo      this
code                libindex_data       libvbahelperlo      threading
codecs              libintrospectionlo  libvbaobjlo         time
codeop              libinvocadaptlo     libvbaswobjlo       timeit
collections         libinvocationlo     libvclcanvaslo      token
colorsys            libiolo             libvclplug_genlo    tokenize
compileall          libjava_uno         libvclplug_gtklo    trace
concurrent          libjavaloaderlo     libvclplug_kde4lo   traceback
configparser        libjavavmlo         libwpftcalclo       tty
contextlib          libjdbclo           libwpftdrawlo       turtle
copy                libjpipe            libwpftimpresslo    types
copyreg             libjuh              libwpftwriterlo     typing
crypt               libjuhx             libwriterfilterlo   unicodedata
csv                 libjvmaccesslo      libwriterperfectlo  unittest
ctypes              libjvmfwklo         libxmlfalo          uno
datetime            libkde4be1lo        libxmlfdlo          unohelper
decimal             libldapbe2lo        libxmlreaderlo      urllib
difflib             liblnthlo           libxmlsecurity      util
dis                 liblocaledata_en    libxoflo            uu
distutils           liblocaledata_es    libxsec_fw          uuid
doctest             liblocaledata_euro  libxsec_xmlsec      warnings
dummy_threading     liblocaledata_others libxsltdlglo        wave
email               liblog_uno_uno      libxsltfilterlo     weakref
encodings           libloglo            linecache           webbrowser
enum                liblosessioninstalllo loader              wizards
errno               liblpsolve55        locale              wsgiref
faulthandler        liblwpftlo          logging             xdrlib
fcntl               libmergedlo         lzma                xml
filecmp             libmigrationoo2lo   macpath             xmlrpc
fileinput           libmigrationoo3lo   macurl2path         xxlimited
fnmatch             libmorklo           mailbox             xxsubtype
formatter           libmozbootstraplo   mailcap             zipfile
fractions           libmsformslo        mailmerge           zipimport
ftplib              libmswordlo         main                zlib
functools           libmtfrendererlo    marshal             
gc                  libmysqllo          math                
genericpath         libnamingservicelo  mimetypes      
今度はWindows版バンドルPythonのモジュールを調べます。

最近Windows10のシェルが勝手にPowerShellに変わってしまいましたが、pythonシェルをなぜか起動できないのでコマンドプロンプトでやります。

スタートボタンをクリックして、キーボードからcmdと入力してEnterキーを押すとコマンドプロンプトが起動します。

"C:\Program Files\LibreOffice 5\program\python.exe"

これでLibreOfficeのバンドルPythonが起動します。

あとの操作はlinuxBeanと同じです。
C:\Users\pq>"C:\Program Files\LibreOffice 5\program\python.exe"
Python 3.5.4 (default, Aug 25 2017, 14:36:43) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> help('modules')

Please wait a moment while I gather a list of all available modules...

__future__          asynchat            ipaddress           sched
__main__            asyncore            itertools           select
_ast                atexit              json                selectors
_bisect             audioop             keyword             shelve
_bootlocale         base64              lib                 shlex
_codecs             bdb                 lib2to3             shutil
_codecs_cn          binascii            linecache           signal
_codecs_hk          binhex              loader              signals
_codecs_iso2022     bisect              locale              site
_codecs_jp          builtins            logging             smtpd
_codecs_kr          bz2                 lzma                smtplib
_codecs_tw          cProfile            macpath             sndhdr
_collections        calendar            macurl2path         socket
_collections_abc    case                mailbox             socketserver
_compat_pickle      cgi                 mailcap             sre_compile
_compression        cgitb               mailmerge           sre_constants
_csv                chunk               main                sre_parse
_ctypes             cmath               marshal             ssl
_ctypes_test        cmd                 math                stat
_datetime           code                mimetypes           statistics
_decimal            codecs              mmap                string
_dummy_thread       codeop              mock                stringprep
_elementtree        collections         modulefinder        struct
_functools          colorsys            msgbox              subprocess
_heapq              compileall          msvcrt              suite
_imp                concurrent          multiprocessing     sunau
_io                 configparser        netrc               symbol
_json               contextlib          nntplib             symtable
_locale             copy                nt                  sys
_lsprof             copyreg             ntpath              sysconfig
_markupbase         crypt               nturl2path          tabnanny
_md5                csv                 numbers             tarfile
_msi                ctypes              officehelper        telnetlib
_multibytecodec     datetime            opcode              tempfile
_multiprocessing    decimal             operator            textwrap
_opcode             difflib             optparse            this
_operator           dis                 os                  threading
_osx_support        distutils           parser              time
_pickle             doctest             pathlib             timeit
_pydecimal          dummy_threading     pdb                 token
_pyio               email               pgen2               tokenize
_random             encodings           pickle              trace
_sha1               enum                pickletools         traceback
_sha256             errno               pipes               tty
_sha512             faulthandler        pkgutil             turtle
_signal             filecmp             platform            types
_sitebuiltins       fileinput           plistlib            typing
_socket             fnmatch             poplib              unicodedata
_sre                formatter           posixpath           unittest
_ssl                fractions           pprint              uno
_stat               ftplib              profile             unohelper
_string             functools           pstats              urllib
_strptime           gc                  pty                 util
_struct             genericpath         py_compile          uu
_symtable           getopt              pyclbr              uuid
_testbuffer         getpass             pydoc               warnings
_testcapi           gettext             pydoc_data          wave
_thread             glob                pyexpat             weakref
_threading_local    gzip                pythonloader        webbrowser
_tracemalloc        hashlib             pythonscript        winreg
_warnings           heapq               pyuno               winsound
_weakref            hmac                queue               wizards
_weakrefset         html                quopri              wsgiref
_winapi             http                random              xdrlib
abc                 imaplib             re                  xml
aifc                imghdr              reprlib             xmlrpc
antigravity         imp                 result              xxsubtype
argparse            importlib           rlcompleter         zipfile
array               inspect             runner              zipimport
ast                 io                  runpy               zlib
Windows版もLinux版もバンドルPythonのバージョンは3.5.4になっていました。

OpenJDKをアップデートするとLibreOfficeのマクロセレクターを起動するとLibreOfficeがクラッシュすることが判明


LibreOffice5.4.1をインストールした後linuxBean14.04で豆ボタン→設定→ソフトウェアの更新、でlinuxBean14.04をアップデートしました。


途中Grub-pcのダイアログがでてきましたが、よくわからないのでお勧め通りすべてにチェックをつけて次に進みました。

しかし、linuxBean14.04(173)LibreOffice5.4.0のインストールで仮想マシンを捨てる羽目になると、全く同じようにPythonマクロが起動しなくなりました。

マクロセレクタを起動しようとするとLibreOfficeが落ちます。

5.4に限らずすべてのバージョンのLibreOfficeで同様になってしまいます。

とりあえずマクロセレクターが起動しない理由がわかりました。

Javaとの相性が悪くなったようです。

ツール→オプション→LibreOffice→詳細、で「Java実行環境を使用」、のチェックをはずすとPythonマクロセレクターが起動できました。

でもそうするとJavaのマクロを起動できないし、Pythonマクロセレクタを起動するたびにJREを有効にするのか聞かれます。
(2017.10.10追記。拡張機能APSOを使うとJavaのことを聞かれずにPythonマクロが実行できるようになります。LibreOffice5(87)Pythonマクロのための拡張機能APSOのインストール参照。)

-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,address=8000,suspend=n

JREを起動するときのこれらのパラメーターを削除してもやっぱりダメです。

OpenJDKのバージョンはアップデート前と後では次のようの変化していました。

openjdk-7-jdk 7u121-2.6.8-0ubuntu1.14.04.3
openjdk-8-jdk 8u111-b14-3~14.04.1

これはLibreOfficeのマクロセレクターが起動できます。

openjdk-7-jdk 7u151-2.6.11-0ubuntu1.14.04.1
openjdk-8-jdk 8u141-b15-3~14.04

これはLibreOfficeのマクロセレクターが起動せずLibreOfficeがクラッシュします。

LibreOfficeでOpenJDK7を指定してもOpenJDK8にしても同じことです。

参考にしたサイト


LibreOffice最新版 | LibreOffice - オフィススイートのルネサンス
バンドルPython付きのLibreOfficeをLinuxで使用するにはここからインストールします。

libreoffice base 5.1 for mac java runtime issues [closed] - Ask LibreOffice
MacOSではJREでなはなくJDKをインストールしないとJavaが認識されないようです。

Troubleshooting Open/LibreOffice and Java (View topic) • Apache OpenOffice Community Forum
Windows10でLibreOfficeにJREを認識させるQ&A。

LibreOfficeをインストールするときの注意点: LibreOfficeで行こう!
LibreOfficeのマクロセレクタを起動したときにJREが必要とのダイアログをでてこなくさせる方法はいまのところわかりません。

Windows 10 Creators Update を適用したら、「コマンドウィンドウをここで開く」がなくなった | UB Lab.
Windows10のデフォルトシェルをコマンドプロンプトに戻すにはレジストリをいじらないといけないようです。

次の関連記事:linuxBean14.04(177)マウスボタンが無効になったときの対応

ブログ検索 by Blogger

Translate

最近のコメント

Created by Calendar Gadget

QooQ