前の関連記事:linuxBean14.04(82)mpld3でツールチップ(やり直し編)
linuxBean14.04(25)NetBeans8とLibreOffice5のインストールでインストールしたLibreOfficeDev 5.0の正式リリースされていたのでLibreOfiice5.0.2をインストールし直します。
LibreOfficeDev 5.0のアンイストール
linuxBean14.04(25)NetBeans8とLibreOffice5のインストールでインストールしたLibreOfficeDev 5.0をアンイストールします。
sudo apt-get remove --purge libreofficedev5.0*.*
(2017.8.7追記。この方法だと5.0以外の5.xもアンインストールされるかもしれません。linuxBean14.04(173)LibreOffice5.4.0のインストールで仮想マシンを捨てる羽目になる参照。)
これでSDK含めてすべてアンイストールされました。
/opt/libreofficedev5.0 フォルダが残っていたのでこれも削除しました。
LibreOfiice5.0.2のインストールと設定
手順はlinuxBean(11)LibreOfficeのインストールと同じです。
LibreOffice最新版 | LibreOffice - オフィススイートのルネサンスからLibreOffice 5.0.2 for Linux x86 (deb)の本体と日本語パッケージ、SDKをダウンロードしました。
解凍してできたdebフォルダでsudo dpkg -i *.*を実行してインストールしました。
本体を2回インストールしないとスタートメニューにアイコンが登録されない問題は永遠に解決されなさそうです。
おそらく一部のdebファイルを実行するだけでアイコンの登録はされると思いますがどれかわかりません。
まあわかっていればそう手間でもないのでまあいいのですけど。
Writerを起動してJavaとPythonのマクロのHelloWorldの例が動くことが確認できました。
linuxBean14.04(6)LibreOffice4.3.7とPyCharmの設定で作成したマイマクロフォルダのマクロも実行できました。
なのでマイマクロフォルダのパス~/.config/libreoffice/4/user/Scripts/python にある4はそのまま使えるようです。
(2015.10.30追記。マイマクロフォルダのフルパスはLibreOfficeDev 5.0の~/.config/libreofficedev/4/user/Scripts/pythonから~/.config/libreoffice/4/user/Scripts/pythonに変更になっています。これに気づかずあとで四苦八苦しました。)
linuxBean14.04(6)LibreOffice4.3.7とPyCharmの設定のPyCharmと通信できる状態でLibreOfficeを起動するランチャアイコンはコマンドの部分を以下に変更しました。
libreoffice5.0 "--accept=socket,host=localhost,port=2002;urp;StarOffice.ServiceManager"
(2015.11.29追記。libreoffice5.0 "-accept=socket,host=localhost,port=2002;urp;StarOffice.ServiceManager"、は非推奨だと警告がでていることに気がついたので訂正しました。下図は訂正前のものです。)
アイコン画像は消えていたので再設定が必要でした。
さらにアプリケーションランチャーのアイコンも再設定が必要でした。
だいぶ起動が速くなりました。事前にロードしているでしょうか。
PyCharm4.5.4の設定
(2015.10.30追記。マイマクロフォルダのフルパスはLibreOfficeDev 5.0の~/.config/libreofficedev/4/user/Scripts/pythonから~/.config/libreoffice/4/user/Scripts/pythonに変更になっていますのでプロジェクトを設定し直す必要があります。)
Settings画面で/opt/libreoffice5.0/program/pythonにProject Interpreterを変更しました。
バンドルPythonのバージョンはLibreOfficeDev 5.0と同じ3.3.5です。
Packageがすでに表示されているのはlinuxBean14.04(38)LibreOfficeバンドルPythonにパッケージを追加ですでに~/.local/lib/python3.3/site-packages/sites.pthを設定しているからです。
PyCharmからもマクロを実行できました。
SDKの例を一括でmakeする
linuxBean14.04(29)LibreOfficeDev5.0SDKの例を一括でmakeするでやった通りにすればよいはずですが、やり方記憶になくもう一度自分が書いた記事をじっくり読み直し、、、
g++はすでにインストールしてあります。
ファイルマネージャで/opt/libreoffice5.0/sdkを開いてそこからツール→現在のフォルダを端末で開く。
sh setsdkenv_unix と入力してEnter。
pq@pq-VirtualBox:/opt/libreoffice5.0/sdk$ sh setsdkenv_unix /bin/sh: 0: Can't open /opt/libreofficedev5.0/sdk/config.guess ************************************************************************ * * SDK environment is prepared for * * SDK = /opt/libreofficedev5.0/sdk * Office = /opt/libreofficedev5.0/sdk/.. * Make = /usr/bin * Zip = /usr/bin * cat = /bin * sed = /bin * C++ Compiler = /usr/bin * Java = /usr * SDK Output directory = /home/pq/libreoffice5.0_sdk * Auto deployment = NO * ************************************************************************
フォルダ名が違うはずなのにlibreofficedev5.0のものを読み込んでいます。
これは出力先がアンイストールしたLibreOfficeDev 5.0と同じで~/libreoffice5.0_sdk/pq-VirtualBoxにあるsetsdkenv_unix.shが残っているからです。
sh setsdkenv_unix --force-configure
--force-configureオプションをつけてすでにある設定ファイルを上書きします。
pq@pq-VirtualBox:/opt/libreoffice5.0/sdk$ sh setsdkenv_unix --force-configure ************************************************************************ * * You have to configure your SDK environment first before you can * use it. The configuration has to be done only once. * ************************************************************************ Enter the Office installation directory [/opt/libreoffice5.0/sdk/..]: Enter GNU make (3.79.1 or higher) tools directory [/usr/bin]: Enter zip (2.3 or higher) tool directory [/usr/bin]: Enter cat tool directory [/bin]: Enter sed tool directory [/bin]: C++ compilers where for example a language binding exist: - Solaris, Sun WorkShop 6 update 1 C++ 5.2 2000/09/11 or higher - Linux, GNU C++ compiler, gcc version 4.0.1 or higher - MacOS, GNU C++ compiler, gcc version 4.0.1 or higher Enter the directory of the C++ compiler, the directory where the compiler is located (optional) [/usr/bin]: Enter Java SDK (1.5, recommendation is 1.6 or higher) installation directory (optional) [/usr]: Default output directory is in your HOME directory. Enter an existent directory if you prefer a different output directory (optional) [/home/pq]: Automatic deployment of UNO components (YES/NO) [YES]: NO最後の選択のみNOにして他はデフォルトのままです。
このままlinuxBean14.04(29)LibreOfficeDev5.0SDKの例を一括でmakeするで作ったmeke_all.shを実行すればよいわけですが、あとでデバッガのアタッチで変数の値をみるためにLibreOffice5(15)Javaの例をデバッグ情報を追加してビルドするのように/opt/libreoffice5.0/sdk/settings/settings.mkにDEBUG=yesを追加しておきます。
bash make_all.sh
bashでしか動かないのでshとするとdashが起動するUbuntuではエラーがでて動きません。
ビルドが完了するとログが~/libreoffice5.0_sdk/log/日付日時、というフォルダに出力されているはずです。
LibreOffice(61)linuxBeanでJavaの例をmakeと同様にしてビルドしたものを実行しやすいようにsetsdkenv_unixを実行して起動するTerminalのランチャを作っておきます。
xfce4-terminal -e "/opt/libreoffice5.0/sdk/setsdkenv_unix" --working-directory="/opt/libreoffice5.0/sdk/examples/DevelopersGuide"
LibreOffice5にNetBeans8のデバッガをアタッチできるようにする
linuxBean14.04(25)NetBeans8とLibreOffice5のインストールと全く同様にします。
すでに設定済なら必要な設定はLibreOffice側のみです。
LibreOffice5にEclipse4.5.1のデバッガをアタッチできるようにする
EclipseのメニューからRun→Debug Configuration。
Remote Java Applicationを右クリックしてNew。
デフォルト設定のまま「Debug」としてブレークポイントでブレイクできました。
事前にLibreOffice5.0でJavaのマクロ(WriterのHelloWorldで可)を実行してJREは起動しておくのはNetBeansのときと同じです。
EclipseはNetBeansと違ってプロジェクトごとの設定になるのでしょうかね。(未確認)
EclipseとNetBeansとどちらでデバッグするか
Java:Eclipseでコールグラフ(1)ispaceプラグインをインストールのispaceが使えるのでEclipseを使おうと思ったのですが、LibreOfficeはNetBeansのほうが相性がよいようです。
Eclipseでは-gオプションをつけずにjavacでコンパイルしていたclassのデバッグで変数の値がデバッグできない理由がわかりませんでした。(LibreOffice5(15)Javaの例をデバッグ情報を追加してビルドする参照。)
さらに/opt/libreoffice5.0/sdk/docs/java/refにあるJavaDocがEclipseでは表示できませんでした。
セキュリティを設定してマクロを使えるようにする
ツール→オプション→LibreOffice→セキュリティ→マクロのセキュリティ。
セキュリティレベルを「中」に設定。
参考にしたサイト
EclipseでJavaアプリケーションをリモートデバッグする方法 - 大人になったら肺呼吸
この方法でEclipseからLibreOfficeにアタッチできました。
0 件のコメント:
コメントを投稿