precise5.7.1-jpでpython-pptxを使いたい

パピーを名犬にするための技、テクニック

モデレータ: 暇人, YoN, nyu

返信する
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

こんにちは、新人のshimada1992です。一年前に家の古いノートパソコンにパピーをインストールして以来はまっています。
パピーで王道のオフィス系のソフトを使うとどうしても重く感じるのでやめました :oops: 。幸いgnumericとabiwordは今ではxlsxとdocxに対応してるのでそれなりに使えますが、PPTだけは代わるいい物が見つけてません。以前プレゼンテーションはShowerと言うHTMLを使ったテンプレートでなんとかやってきたのですが、最近ほかの人に送って改正してもらう際に面倒くさくてしょうがないと苦情をもらったので、これはやはりPPTXをつかわなきゃと思い色々調べた所、pythonでpython-pptxと言うソフトがありました:
https://python-pptx.readthedocs.io/en/latest/

Documentationに従って最も簡単なpip installでインストールしようと思い、PPMから
python-pkg-resources_0.6.24
python-pip_1.0
python-setuptools_0.6.24
をインストールした後urxvtで
    # pip install python-pptx
を入れた所、以下のエラーがでました:

# pip install python-pptx
Downloading/unpacking python-pptx
Downloading python-pptx-0.6.11.tar.gz (8.6Mb): 8.6Mb downloaded
Running setup.py egg_info for package python-pptx
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/root/.pip/build/python-pptx/setup.py", line 87, in <module>
setup(**params)
File "/usr/lib/python2.7/distutils/core.py", line 138, in setup
ok = dist.parse_command_line()
File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 232, in parse_command_line
result = _Distribution.parse_command_line(self)
File "/usr/lib/python2.7/distutils/distutils/dist.py", line 467, in parse_command_line
args = self._parse_command_opts(parser, args)
File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 557, in _parse_command_opts
nargs = _Distribution._parse_command_opts(self, parser, args)
File "/usr/lib/python2.7/distutils/distutils/dist.py", line 531, in _parse_command_opts
"command class %s must subclass Command" % cmd_class
distutils.errors.DistutilsClassError: command class setuptools.command.egg_info.egg_info must subclass Command
Complete output from command python setup.py egg_info:
Traceback (most recent call last):

File "<string>", line 14, in <module>

File "/root/.pip/build/python-pptx/setup.py", line 87, in <module>

setup(**params)

File "/usr/lib/python2.7/distutils/core.py", line 138, in setup

ok = dist.parse_command_line()

File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 232, in parse_command_line

result = _Distribution.parse_command_line(self)

File "/usr/lib/python2.7/distutils/distutils/dist.py", line 467, in parse_command_line

args = self._parse_command_opts(parser, args)

File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 557, in _parse_command_opts

nargs = _Distribution._parse_command_opts(self, parser, args)

File "/usr/lib/python2.7/distutils/distutils/dist.py", line 531, in _parse_command_opts

"command class %s must subclass Command" % cmd_class

distutils.errors.DistutilsClassError: command class setuptools.command.egg_info.egg_info must subclass Command

----------------------------------------
Command python setup.py egg_info failed with error code 1
Storing complete log in /root/.pip/pip.log

問題はsetuptoolにあるのだと思いますが、今のところどうやって解決するかは分かりません :(
どなたかよければアドバイスをくれたらとてもありがたいです。
そしてほかのPPTをつくれるいいソフトがあるなら是非試してみたいです。
くさがめ
記事: 68
登録日時: 15/12/27(日) 17:59
連絡する:

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by くさがめ »

shimada1992 さんが書きました:パピーで王道のオフィス系のソフトを使うとどうしても重く感じるのでやめました。
shimada1992 さんが書きました:そしてほかのPPTをつくれるいいソフトがあるなら是非試してみたいです。
重いかもしれませんが、LibreOfficeを使うのがいいかなと思います。
メニュー→文書→Get LibreOfficeから簡単に最新版を入れられます。

もし重いのであれば、シノバーさんの所から旧バージョンをダウンロードすればいいと思います。
http://shino.pos.to/party/bridge.cgi?puppy/opt/pup5/
TOSHIBA dynabook T554/56LRD
Core i7-4700MQ 2.40GHz RAM 8GB
Bionicpup64 8.0
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

571JP でインストールを試みましたが、うまくいきませんでした。
lxml のバージョンではじかれているみたいでした。

tahrpup 6.0.5 でやってみました。
まず、pip と依存パッケージを、パッケージマネージャからインストールしました。(たくさんのパッケージが入りました。)
やはり lxml でエラーになるので、python-lxml_3.3.3 をパッケージマネージャで入れてから pip でインストールを試みたらうまくいったようです。
使い方がよく分からないのですが、テキストエディタで html を書くのと同じようなことですか。そうだとすると、一般向けではないですね。生成された test.pptx を OpenOffice で開くことができました。

世間ではプレゼン=パワーポイントという考え方になるのでしょうけど、個人的には好きではありません。私はファイルを他人に渡したりしないので、OpenOffice で作って odp (オープンドキュメント)形式で保存しています。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

くさがめさんへ:
返信ありがとうごさいます。
shinobarさんのlibreは一番古い4.1.4でも168mはあって、インストールしたらやはり重いと感じてしまいます :(
それに比べたらgnumericとabiwordを含んだgofficesuiteは10m未満でとても軽く感じます。もし未来本当にオフィスソフトや他の基本ソフトがみんな重いと感じたときは、爺さんパソコンの引退時なのでしょうね。
thinkpadnerdさんがパピーでpython-pptxに成功したようなので、そちらをまず試してみようと思います。
最後に編集したユーザー shimada1992 [ 18/08/28(火) 21:27 ], 累計 1 回
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

thinkpadnerdさん、返信ありがとうございます。
わざわざ自分でインストールを試し結果を教えてくれるとはとてもありがたいです :D
やはり lxml でエラーになるので、python-lxml_3.3.3 をパッケージマネージャで入れてから pip でインストールを試みたらうまくいったようです。
問題はlxmlにあったのですね。今は5.7.1JPの使い心地がとてもいいので、python-lxml_3.3.3をインストールして使えるかどうか試してみたいと思います。5.7.1JPのPPMでは2.3.2しかないのでさっそくpuppy wikiや英語フォーラムで探した所、python-lxml.3.2.1のpetパッケージらしき物を見つけました:

http://www.murga-linux.com/puppy/viewto ... 22&t=86662

しかし実際ダウンロードすると、作者のwebでは.petと説明した物は.gzとなっており、解凍した後のファイルは.xxの様なものがなく、.petを付け加えてもインストールできませんでした。今の所まだ捜索中です :oops:

もう少し新しいパソコンなら、OpenやLibreも全然大丈夫だと思いますが、今の爺さんパソコンに結構愛嬌があって、なるべく長くそして気持ちよく使いたいと思ってます。爺さんパソコンが引退する前にabiwordやgnumericのような軽量のslideソフトが出てきてくれたらいいですね。
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

”shimada1992 さんが書きました:
> 5.7.1JPのPPMでは2.3.2しかないので

tahrpup (ubuntu tahr) 用の python-lxml_3.3.3 を 571JP に入れてみましたが、依存関係で怒られることはありませんでした。
しかし、python-pptx のインストールがうまくいかない原因は、lxml だけではなさそうです。pip は、必要なライブラリがシステムにない場合、自動的にダウンロードしてコンパイルしてくれますが、571JPの初期状態ではコンパイルに必要なファイル(例えば、python のヘッダーファイル)がないので、そういったものも追加しなければなりません。依存ファイルがさらなる依存ファイルを呼び込むことになって、大変厄介です。
tahrpup 6.0.5 なら、そういった面倒はなさそうです。

ご利用のパソコンのスペックが分かりませんが、571JPで Open/Libre Office が重いということは、tahrpup 6.0.5 も重いということでしょうか。(tahrpup 6.0.5 はメモリ768MB以上必要ですが、swap ファイルを用意すれば、512MBでも何とか動きます。)

あと、OpenOffice は LibreOffice よりサイズが小さいです。最新のバージョン 4.1.5 の sfs で約 143MB です。571JPにも対応しています。(LibreOffice より小さい分、機能は劣ります。)
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

571JP で python-pptx を動かすことができました。pip は使わずに、手動でインストールしました。

まず、パッケージマネージャから以下をインストール (これらはインストール作業に必要です)
python-pkg-resources_0.6.24
python-setuptools_0.6.24
python2.7-dev_2.7.3
python-dev_2.7.3

次に pypi.org から以下のソースをダウンロード
lxml-3.1.2.tar.gz (deb パッケージは使用しません)
Pillow-5.2.0.tar.gz
XlsxWriter-1.0.9.tar.gz
python-pptx-0.6.12.tar.gz

それぞれのパッケージについて、
1. 解凍する
2. 解凍してできたフォルダに移動する (端末)
3. コマンドを実行する (端末)
# python setup.py install

こうして、python-pptx でパワーポイントのファイルを作っても、表示を確認するのに Open/Libre Office が必要ですね。

追記
python-pptx で生成したサンプルを OpenOffice で開いてみたのですが、グラフが表示されませんでした。tahrpup にインストールした python-pptx の場合も同じでした。
M$ Office のファイルを OpenOffice で開いた場合に図形要素が欠落するのはありうることです。

問題のファイルを Google Document で表示することができました。パワーポイントのファイルを作るのなら、Google Document が使えます!
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

thinkpadnerdさん:
571JPでのinstallに成功したんですね!ご苦労様です!!
さっそく僕も試してみました!が、PPMでpython2.7と調べると、
idle-python2.7_2.7.3
python2.7_examples_2.7.3
libpython2.7_2.7.3
python2.7_2.7.3
python2.7-minimal_2.7.3

しか出できません、肝心のdevが見当たりませんでした(悲)。更新してみましたが、結果は同じでした。puppy2-puppy5以外のレポジトリも更新して試してみましたが、ダメでした :oops: ちなみに僕のパソコンは元々shinobarさん所のdevx_precise_5.7.1.sfsをインストールしてます。pythonのバージョンを調べると、2.7.3とも表示します。
そしてpipなしのインストールを試した所、やっぱり失敗しました...

# cd build
# cd lxml-3.1.2
# python setup.py install
Building lxml version 3.1.2.
Building without Cython.
Using build configuration of libxslt 1.1.26
Building against libxml2/libxslt in the following directory: /usr/lib/i386-linux-gnu
/usr/lib/python2.7/distutils/distutils/dist.py:267: UserWarning: Unknown distribution option: 'bugtrack_url'
warnings.warn(msg)
Traceback (most recent call last):
File "setup.py", line 218, in <module>
**setup_extra_options()
File "/usr/lib/python2.7/distutils/core.py", line 138, in setup
ok = dist.parse_command_line()
File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 232, in parse_command_line
result = _Distribution.parse_command_line(self)
File "/usr/lib/python2.7/distutils/distutils/dist.py", line 467, in parse_command_line
args = self._parse_command_opts(parser, args)
File "/usr/lib/python2.7/dist-packages/setuptools/dist.py", line 557, in _parse_command_opts
nargs = _Distribution._parse_command_opts(self, parser, args)
File "/usr/lib/python2.7/distutils/distutils/dist.py", line 531, in _parse_command_opts
"command class %s must subclass Command" % cmd_class
distutils.errors.DistutilsClassError: command class setuptools.command.install.install must subclass Command

ここまできてpython-pptxをインストールできないのも悔しいので、もうちょっと試してみたいと思います。dev-pythonを探し中です。

ちなみにgoogle docsは使えました。いい物紹介してくださってありがとうございます!
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

”shimada1992 さんが書きました:
> 肝心のdevが見当たりませんでした

パッケージマネージャで検索するときに、"DEV" のチェックボックスにチェックを入れてください。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

thinkpadnerd さんが書きました:”shimada1992 さんが書きました:
> 肝心のdevが見当たりませんでした

パッケージマネージャで検索するときに、"DEV" のチェックボックスにチェックを入れてください。
DEVパッケージをインストールできました。ありがとうございます :D
でもpipなしでlxmlインストールを試すと前と同じエラーが出できました :cry: 他のpythonパッケージに問題があるのだとおもいます。
僕はpython-pptxのためにインストールしたpythonパッケージ以外は、devx_precise_571.sfsしかインストールしてません。thinkpadnerdさんの571jpと比べてなにか違うでしょうか?
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

”shimada1992 さんが書きました:
> 前と同じエラーが出できました

tar.gz を展開してできたフォルダを削除して、新たに展開し直して、インストールを試みたらどうでしょうか。(以前にエラーになった時の残骸が邪魔をしているかもしれません。)

私のところでも devx_precise_571.sfs を利用しています。今回追加したパッケージ以外には、python-dbus と python-dbus-dev が入っていますが、これらは関係ないと思います。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

thinkpadnerd さんが書きました:”shimada1992 さんが書きました:
> 前と同じエラーが出できました

tar.gz を展開してできたフォルダを削除して、新たに展開し直して、インストールを試みたらどうでしょうか。(以前にエラーになった時の残骸が邪魔をしているかもしれません。)

私のところでも devx_precise_571.sfs を利用しています。今回追加したパッケージ以外には、python-dbus と python-dbus-dev が入っていますが、これらは関係ないと思います。
新たに展開し直しましたが、やはり同じエラーがでてきました :(
そこで突然思いついたんですが、僕の571jpはfull installなのですが、もしかしたらこのエラーはfull installでの独特なエラーではないのでしょうか?
さっそくfungal installの571jpをインストールして試した所、devxをインストールした後python2.7-dev_2.7.3をインストールすると、以下のdependenciesが要求されました:

libdb5.1_5.1.25
libpython2.7_2.7.3
mime-support_3.51
python-minimal_2.7.3
python2.7-minimal_2.7.3
python2.7_2.7.3

これらも全部インストールした後もう一度thinkpadnerdさんの方法を試したら、python-pptxのインストールに成功しました!!
ちなみにfull installの571jpで以上の6つのパッケージをインストールしても、前と代わらないエラーがでました。これはつまり、full installの場合、sfs-loadでインストールしたdevxは使えないと言うことでしょうかね。
何がともあれ、python-pptxが使えるようになりました :D もう一度thinkpadnerdさんにお礼を言いたいと思います。本当にありがとうございました :!: :!:
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

”shimada1992 さんが書きました:
> full installの場合、sfs-loadでインストールしたdevxは使えないと言うことでしょうかね。

full install の場合は sfs の利用はサポートされないのではないでしょうか。
メイン sfs と追加 sfs に同じ名前のファイルがある場合、メイン sfs にあるものが優先されますが、full install に追加 sfs をかぶせると、追加 sfs に含まれるファイルで上書きすることになるのではないかと...
私は full install はしたことがないので、確信はありません。

devx_precise_571.sfs に python のライブラリは含まれていますが、フルセットではないので、コンパイルができないということだと思います。sfs のサイズが大きくならないように、あえて削ったのかもしれません。このような点が、Puppy は分かりにくい(とっつきにくい)という印象につながっているのかもしれません。

libpython や python-minimal は最初から(おそらく追加 sfs に)含まれていてインストールの必要はなかったと記憶していますが、いずれにせよ、python-pptx がインストールできてよかったですね。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
shimada1992
記事: 33
登録日時: 18/07/26(木) 16:20

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by shimada1992 »

thinkpadnerd さんが書きました:
libpython や python-minimal は最初から(おそらく追加 sfs に)含まれていてインストールの必要はなかったと記憶していますが、いずれにせよ、python-pptx がインストールできてよかったですね。
まずlibpythonについてですが、thinkpadnerdさんの言う通りです。frugalでlibpythonやpython-minimalなどアンインストールした所、python-pptxのインストールに影響はありませんでした。僕の場合、frugalではロードしたsfsはsfs-loadには表示されますが、PPMには表示されません、それでPPMはlibpythonらのインストールを推薦したのだと思います。
thinkpadnerd さんが書きました:”shimada1992 さんが書きました:
full install の場合は sfs の利用はサポートされないのではないでしょうか。
メイン sfs と追加 sfs に同じ名前のファイルがある場合、メイン sfs にあるものが優先されますが、full install に追加 sfs をかぶせると、追加 sfs に含まれるファイルで上書きすることになるのではないかと...
私は full install はしたことがないので、確信はありません。
SFS-loadの説明でも書いてあったように、full installは本来SFSのロードを支持していなくて、擬似PETを使ってインストールしてるそうなんです。そして今回full installでdevxとgofficeのsfsをアンロードして再びロードした所、色々なファイルがコピーされてないと表示されました。これがfull installでのsfsロードの問題でしょうか?そのコピーされてないファイル達を手動で正確のディレクトリにコピーしたらいいのかな?なんかsfs-load in full-installは単独でスレッド開けたほうがいいかもしれません :oops: とりあえずもうちょっと試していきたいと思います。

ちなみにpuppyでfull installにこだわる理由は、frugalだとRAMを使っていて、色々なソフトをインストールして使うと、シノバーさんが言うようにpupsaveファイルが”食いつぶ”されてしまうことがあります。あとoperaのメール機能を使用した時、サーバーから過去のメールをダウンロードするのですが、これもfrugalだとpupsaveに入って瞬く間にRAMがなくなります :shock: パピーで色々試す際、RAM占用の角度からするとfullのほうがやりやすいと思ってます。
thinkpadnerd
記事: 2035
登録日時: 15/10/25(日) 14:00

Re: precise5.7.1-jpでpython-pptxを使いたい

投稿記事 by thinkpadnerd »

”shimada1992 さんが書きました:
> コピーされてないファイル達を手動で正確のディレクトリにコピーしたらいいのかな?

(full install に関する話を掘り下げる必要があるなら、how to 以外のところに新たなスレッドを立てたほうがいいでしょうね。)

sfs の「内容を見る」で sfs を一時的にマウントして、中身をコピーして / 以下に貼り付ければいいのではないでしょうか。(重複するファイルがある場合は上書きの確認が出ると思います。)
ただ、full install の場合に「内容を見る」が選択できるのか、私はしたことがないので分かりません。

追記
sfs をマウントすることはできるようですね。でも、この作業でシステムを壊してしまうといけないので、実行なさる場合は慎重に行って下さい。
(やっぱり、いつでも元に戻せる frugal install のほうが、私は気楽だと思います。)
追記終り


> pupsaveファイルが”食いつぶ”されてしまう

私は一貫して frugal install で使っています。pupsave のバックアップをとっておけば、仮に puppy に不具合が生じて起動しなくなっても、簡単に以前の状態に復旧できるからです。

ブラウザやオフィススイートのようなサイズの大きなアプリは、sfs をロードします。比較的サイズの小さいアプリは pet や deb パッケージから入れます。sfs と pet などのパッケージを適切に使い分けることで、pupsave の消費を抑えています。
あと、ブラウザのキャッシュは /tmp にとるようにすれば pupsave を消費しません。(ただし tmpfs はメモリにあるのでメモリを消費します。この辺のバランスをとるのは難しいですね。) もちろん、キャッシュのサイズは制限しておきます。
メールフォルダは pupsave の外(例えば、/mnt/home) に置いて、リンクを張っておけば、pupsave を消費しません。

pupsave は一応、1.8GB までは許容されるので、目一杯利用するのも一つの手です。pupsave を大きくしても、メモリの使用量は増えません。ただ、バックアップをとるのに時間がかかります。
ThinkPad X121e (Precise 571 / Tahr 605 / Tahr64 606 / Xenial 7.5 / Bionic32)
CPU AMD C-50 1.0GHz, RAM 4GB
ThinkPad L440 (Xenial 7.5 / Bionic64 / Fossa64)
CPU intel Celeron 2950M 2.0GHz, RAM 4GB
返信する